28 lines
668 B
C#
28 lines
668 B
C#
using System.Text;
|
|
using Intromat.Model.Compiler;
|
|
|
|
namespace Intromat.Nodes.Code
|
|
{
|
|
public abstract class LiteralValueBase<T> : ITypedExpression<T>
|
|
{
|
|
public virtual string? PreviewValue => Value?.ToString();
|
|
|
|
public T ParentValue { get; set; } = default!;
|
|
|
|
public T InputValue { get; set; } = default!;
|
|
|
|
public T Value { get; set; } = default!;
|
|
|
|
public ERelativeSource RelativeSource { get; set; }
|
|
|
|
public virtual void Compile(CompilerContext context, StringBuilder sb)
|
|
{
|
|
sb.Append(Value);
|
|
}
|
|
|
|
public virtual T Evaluate()
|
|
{
|
|
return Value;
|
|
}
|
|
}
|
|
} |