JintConstantExpression.cs 590 B

1234567891011121314151617181920212223
  1. using Esprima.Ast;
  2. using Jint.Native;
  3. namespace Jint.Runtime.Interpreter.Expressions;
  4. /// <summary>
  5. /// Constant JsValue returning expression.
  6. /// </summary>
  7. internal sealed class JintConstantExpression : JintExpression
  8. {
  9. private readonly JsValue _value;
  10. public JintConstantExpression(Expression expression, JsValue value) : base(expression)
  11. {
  12. _value = value;
  13. }
  14. public JsValue Value => _value;
  15. public override JsValue GetValue(EvaluationContext context) => _value;
  16. protected override object EvaluateInternal(EvaluationContext context) => _value;
  17. }