Пример #1
0
        public void DoSemantics()
        {
            SemanticsVisitor visitor = new SemanticsVisitor();

            Console.WriteLine("Starting semantic checking");
            visitor.CheckSemantics(CurrentSemanticValue);
        }
Пример #2
0
        //check if Identifier is declared in Symbol table and assignable
        public override void VisitNode(Identifier node)
        {
            SemanticsVisitor visitor = new SemanticsVisitor();

            node.Accept(visitor);
            if (!isAssignable(node.AttributesRef))
            {
                node.TypeRef       = new ErrorTypeDescriptor();
                node.AttributesRef = null;
            }
        }