Files
serein-flow/Serein.Script/Node/ValueNode/NumberNode.cs
fengjiayi 79af278b70 1. 移除了FlipflopContext,统一流程API
2. Script项目脚本修复了 RawString 原始字符串存在的问题
3. Script使用了ValueNode统一了值类型节点,为后续扩展更多的值类型做准备
4. TypeHelper.ToTypeOfString()方法中添加了部分值类型的"Type[]”与“List<Type>”的显式定义,用于脚本在类型中定义数组成员
5. Script项目脚本默认挂载的json方法拆分为jsonObj(String)与jsonStr(Object)以支持序列化与反序列化
6. 项目保存为dnf项目文件时,将不再保存名称为”Default"并且没有节点的画布,避免重复保存时默认画布增多。
2025-08-02 22:04:13 +08:00

90 lines
1.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Serein.Script.Node
{
/// <summary>
/// 数值型节点
/// </summary>
public abstract class NumberNode<T> : ValueNode<T> where T : struct, IComparable<T>
{
public NumberNode(T value) => Value = value;
}
/// <summary>
/// int 整数型字面量
/// </summary>
public class NumberIntNode(int vlaue) : NumberNode<int>(vlaue)
{
}
/// <summary>
/// long 整数型字面量
/// </summary>
public class NumberLongNode(long vlaue) : NumberNode<long>(vlaue)
{
}
/// <summary>
/// float 字面量
/// </summary>
public class NumberFloatNode(float vlaue) : NumberNode<float>(vlaue)
{
}
/// <summary>
/// double 字面量
/// </summary>
public class NumberDoubleNode(double vlaue) : NumberNode<double>(vlaue)
{
}
/*/// <summary>
/// int 整数型字面量
/// </summary>
public class NumberIntNode : ASTNode
{
public int Value { get; }
public NumberIntNode(int value) => Value = value;
}
/// <summary>
/// int 整数型字面量
/// </summary>
public class NumberLongNode : ASTNode
{
public long Value { get; }
public NumberLongNode(long value) => Value = value;
}
/// <summary>
/// int 整数型字面量
/// </summary>
public class NumberFloatNode : ASTNode
{
public float Value { get; }
public NumberFloatNode(float value) => Value = value;
}
/// <summary>
/// int 整数型字面量
/// </summary>
public class NumberDoubleNode : ASTNode
{
public double Value { get; }
public NumberDoubleNode(double value) => Value = value;
}*/
}