コード例 #1
0
 protected virtual T VisitPrototypeDefinition(PrototypeDefinitionNode node)
 {
     Visit(node.NameNode);
     Visit(node.InheritanceParentReferenceNode);
     Visit(node.BodyNodes);
     return(DefaultResult);
 }
コード例 #2
0
        protected override void VisitPrototypeDefinition(PrototypeDefinitionNode prototypeDefinitionNode)
        {
            string          prototypeName   = prototypeDefinitionNode.NameNode.Value;
            PrototypeSymbol prototypeSymbol = new PrototypeSymbol(prototypeName, prototypeDefinitionNode);

            AddSymbol(prototypeSymbol);
            Visit(prototypeDefinitionNode.BodyNodes);
        }
コード例 #3
0
        protected override void VisitPrototypeDefinition(PrototypeDefinitionNode node)
        {
            PrototypeSymbol symbol = (PrototypeSymbol)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.VisitPrototypeDefinition(node);
            _currentBlockSymbol = null;
        }
 protected virtual void VisitPrototypeDefinition(PrototypeDefinitionNode node)
 {
     Visit(node.NameNode);
     Visit(node.InheritanceParentReferenceNode);
     Visit(node.BodyNodes);
 }
 protected override void VisitPrototypeDefinition(PrototypeDefinitionNode node)
 {
     CheckStatementsForSingleExpressionHack(node.BodyNodes);
     base.VisitPrototypeDefinition(node);
 }