JintSuperExpression.cs 634 B

1234567891011121314151617181920
  1. using Esprima.Ast;
  2. using Jint.Runtime.Environments;
  3. namespace Jint.Runtime.Interpreter.Expressions
  4. {
  5. internal sealed class JintSuperExpression : JintExpression
  6. {
  7. public JintSuperExpression(Super expression) : base(expression)
  8. {
  9. }
  10. protected override object EvaluateInternal(EvaluationContext context)
  11. {
  12. var envRec = (FunctionEnvironment) context.Engine.ExecutionContext.GetThisEnvironment();
  13. var activeFunction = envRec._functionObject;
  14. var superConstructor = activeFunction.GetPrototypeOf();
  15. return superConstructor!;
  16. }
  17. }
  18. }