Language getLanguage(Class<? extends TruffleLanguage<?>> languageClass) { if (CompilerDirectives.isPartialEvaluationConstant(this)) { return getLanguageImpl(languageClass); } else { return getLanguageBoundary(languageClass); } }
PolyglotLanguageContext getLanguageContext(Class<? extends TruffleLanguage<?>> languageClass) { if (CompilerDirectives.isPartialEvaluationConstant(this)) { return getLanguageContextImpl(languageClass); } else { return getLanguageContextBoundary(languageClass); } }
private boolean isInitialized() { if (CompilerDirectives.isPartialEvaluationConstant(this)) { boolean localInitialized = initialized; if (initializedUnchangedAssumption.isValid()) { return localInitialized; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); return initialized; } } else { return initialized; } }
private boolean isInitialized() { if (CompilerDirectives.isPartialEvaluationConstant(this)) { boolean localInitialized = initialized; if (initializedUnchangedAssumption.isValid()) { return localInitialized; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); return initialized; } } else { return initialized; } }
PolyglotLanguageContext getLanguageContext(Class<? extends TruffleLanguage<?>> languageClass) { if (CompilerDirectives.isPartialEvaluationConstant(this)) { return getLanguageContextImpl(languageClass); } else { return getLanguageContextBoundary(languageClass); } }
private Object getLanguageContext() { if (CompilerDirectives.isPartialEvaluationConstant(this)) { Object languageContext = this.context; if (contextUnchangedAssumption.isValid()) { return languageContext; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); return context; } } else { return this.context; } } }
private Object getLanguageContext() { if (CompilerDirectives.isPartialEvaluationConstant(this)) { Object languageContext = this.context; if (contextUnchangedAssumption.isValid()) { return languageContext; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); return context; } } else { return this.context; } } }