Exemplo n.º 1
0
        internal ImmutableContextBase(
            ContextTree contextTree,
            ImmutableContextBase parent,
            [NotNull] ModuleLiteral module,
            TopLevelValueInfo topLevelValueInfo,
            FileType fileType,
            EvaluatorConfiguration configuration,
            [NotNull] IEvaluationScheduler evaluationScheduler)
        {
            Contract.Requires(contextTree.IsValid);
            Contract.Requires(parent == null || parent.ContextTree == contextTree);
            Contract.Requires(module != null);
            Contract.Requires(evaluationScheduler != null);

            ParentContext          = parent;
            LastActiveUsedModule   = module;
            TopLevelValueInfo      = topLevelValueInfo;
            ContextTree            = contextTree;
            DebugState             = new DebugState();
            m_relativePath         = RelativePath.Invalid;
            EvaluatorConfiguration = configuration;
            EvaluationScheduler    = evaluationScheduler;
            FileType = fileType;
            if (parent != null)
            {
                m_callStack = parent.m_callStack;
            }
        }
Exemplo n.º 2
0
 /// <nodoc />
 public ModuleAndContext(ModuleLiteral module, ContextTree tree)
 {
     Module = module;
     Tree   = tree;
 }