コード例 #1
0
 protected virtual T VisitInstanceDefinition(InstanceDefinitionNode node)
 {
     Visit(node.NameNode);
     Visit(node.InheritanceParentReferenceNode);
     Visit(node.BodyNodes);
     return(DefaultResult);
 }
コード例 #2
0
        protected override void VisitInstanceDefinition(InstanceDefinitionNode instanceDefinitionNode)
        {
            string         instanceName   = instanceDefinitionNode.NameNode.Value;
            InstanceSymbol instanceSymbol = new InstanceSymbol(instanceName, instanceDefinitionNode);

            AddSymbol(instanceSymbol);
            Visit(instanceDefinitionNode.BodyNodes);
        }
コード例 #3
0
        protected override void VisitInstanceDefinition(InstanceDefinitionNode node)
        {
            InstanceSymbol symbol = (InstanceSymbol)node.Symbol;

            if (symbol?.InheritanceParentSymbol?.Node != null)
            {
                Visit(symbol.InheritanceParentSymbol.Node);
            }

            _initializedAttributesPaths            = new HashSet <string>();
            _initializedLocalsPaths                = new HashSet <string>();
            _node2InitializedAttributesPaths[node] = _initializedAttributesPaths;

            _currentBlockSymbol = symbol;
            base.VisitInstanceDefinition(node);
            _currentBlockSymbol = null;
        }
 protected virtual void VisitInstanceDefinition(InstanceDefinitionNode node)
 {
     Visit(node.NameNode);
     Visit(node.InheritanceParentReferenceNode);
     Visit(node.BodyNodes);
 }
 protected override void VisitInstanceDefinition(InstanceDefinitionNode node)
 {
     CheckStatementsForSingleExpressionHack(node.BodyNodes);
     base.VisitInstanceDefinition(node);
 }