Class Environment

java.lang.Object
com.oracle.truffle.js.parser.env.Environment
Direct Known Subclasses:
BlockEnvironment, DebugEnvironment, DerivedEnvironment, EvalEnvironment, FunctionEnvironment

public abstract class Environment extends Object
  • Field Details

  • Constructor Details

  • Method Details

    • declareLocalVar

      public JSFrameSlot declareLocalVar(Object name)
    • hasLocalVar

      public boolean hasLocalVar(Object name)
    • findThisVar

      public Environment.VarRef findThisVar()
    • reserveThisSlot

      public void reserveThisSlot()
    • findSuperVar

      public Environment.VarRef findSuperVar()
    • reserveSuperSlot

      public void reserveSuperSlot()
    • findArgumentsVar

      public Environment.VarRef findArgumentsVar()
    • reserveArgumentsSlot

      public void reserveArgumentsSlot()
    • findNewTargetVar

      public Environment.VarRef findNewTargetVar()
    • reserveNewTargetSlot

      public void reserveNewTargetSlot()
    • findAsyncContextVar

      public Environment.VarRef findAsyncContextVar()
    • findAsyncResultVar

      public Environment.VarRef findAsyncResultVar()
    • findYieldValueVar

      public Environment.VarRef findYieldValueVar()
    • findDynamicScopeVar

      public Environment.VarRef findDynamicScopeVar()
    • reserveDynamicScopeSlot

      public void reserveDynamicScopeSlot()
    • declareInternalSlot

      public JSFrameSlot declareInternalSlot(Object name)
    • createLocal

      public final JavaScriptNode createLocal(JSFrameSlot frameSlot, int frameLevel, int scopeLevel)
    • findInternalSlot

      public final Environment.VarRef findInternalSlot(Object name)
    • findInternalSlot

      public final Environment.VarRef findInternalSlot(Object name, boolean allowDebug)
    • findInternalSlot

      protected final Environment.VarRef findInternalSlot(Object name, boolean allowDebug, int skippedFrames)
    • findLocalVar

      public final Environment.VarRef findLocalVar(com.oracle.truffle.api.strings.TruffleString name)
    • findVar

      public final Environment.VarRef findVar(com.oracle.truffle.api.strings.TruffleString name, boolean skipWith)
    • findBlockScopedVar

      public final Environment.VarRef findBlockScopedVar(com.oracle.truffle.api.strings.TruffleString name)
    • findVar

      public final Environment.VarRef findVar(com.oracle.truffle.api.strings.TruffleString name, boolean skipWith, boolean skipEval, boolean skipBlockScoped, boolean skipGlobal, boolean skipMapped)
    • findVar

      public final Environment.VarRef findVar(com.oracle.truffle.api.strings.TruffleString name, boolean skipWith, boolean skipEval, boolean skipBlockScoped, boolean skipGlobal, boolean skipMapped, boolean skipVar)
    • findBlockFrameSlot

      public JSFrameSlot findBlockFrameSlot(Object name)
    • findFunctionFrameSlot

      public JSFrameSlot findFunctionFrameSlot(Object name)
    • getBlockFrameDescriptor

      public JSFrameDescriptor getBlockFrameDescriptor()
    • getParent

      public final Environment getParent()
    • function

      public final FunctionEnvironment function()
    • getParentAt

      public final Environment getParentAt(int frameLevel, int scopeLevel)
    • createTempVar

      public Environment.VarRef createTempVar()
    • findTempVar

      public Environment.VarRef findTempVar(JSFrameSlot var)
    • getFunctionFrameDescriptor

      public JSFrameDescriptor getFunctionFrameDescriptor()
    • isStrictMode

      public boolean isStrictMode()
    • getScopeLevel

      public int getScopeLevel()
    • hasScopeFrame

      public boolean hasScopeFrame()
    • getScope

      public Scope getScope()
    • getBlockScopeSlot

      public final JSFrameSlot getBlockScopeSlot(int frameLevel, int scopeLevel)
    • getCurrentBlockScopeSlot

      public JSFrameSlot getCurrentBlockScopeSlot()
    • addFrameSlotsFromSymbols

      public void addFrameSlotsFromSymbols(Iterable<Symbol> symbols)
    • addFrameSlotsFromSymbols

      public void addFrameSlotsFromSymbols(Iterable<Symbol> symbols, boolean onlyBlockScoped, Predicate<Symbol> filter)
    • addFrameSlotFromSymbol

      public void addFrameSlotFromSymbol(Symbol symbol)
    • isDynamicallyScoped

      public boolean isDynamicallyScoped()
    • isDynamicScopeContext

      public boolean isDynamicScopeContext()
      Environment chain contains a dynamic scope (eval or with) that may shadow variables.
    • getVariableEnvironment

      public Environment getVariableEnvironment()
    • findActiveModule

      public Environment.VarRef findActiveModule()
    • toStringImpl

      protected String toStringImpl(Map<String,Integer> state)
    • joinElements

      protected static String joinElements(Iterable<? extends Object> keySet)
    • toString

      public String toString()
      Overrides:
      toString in class Object