JintSuperExpression.cs 629 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(Engine engine, Super expression) : base(engine, expression)
  8. {
  9. }
  10. protected override object EvaluateInternal()
  11. {
  12. var envRec = (FunctionEnvironmentRecord) _engine.ExecutionContext.GetThisEnvironment();
  13. var activeFunction = envRec._functionObject;
  14. var superConstructor = activeFunction.GetPrototypeOf();
  15. return superConstructor;
  16. }
  17. }
  18. }