Beispiel #1
0
        public override bool Visit(ObjectAccess node)
        {
            /*
             * if (node.obj is IdentifierStatic && node.Parent is Assignment)
             * {
             *      Assignment ass = node.Parent as Assignment;
             *      Identifier id = ass.lvalue as Identifier;
             *      IdentifierStatic stid = node.obj as IdentifierStatic;
             *      string objname = id.name;
             *      outputCode("new " + stid.name + "();", false, false);
             *      outputCode("", false, true);
             *      outputCode(objname + "->", true, false);
             * }
             * else
             */
            {
                if (node.obj is IdentifierStatic)
                {
                    IdentifierStatic stid = node.obj as IdentifierStatic;
                    outputCode(stid.name, false, false);
                }
                else
                {
                    traverse(node.obj);
                }
                outputCode(".", false, false);
            }

            outputCode(node.field, false, false);

            return(true);
        }
 public virtual T Visit(IdentifierStatic node)
 {
     return(Visit((LvalueExpression)node));
 }
Beispiel #3
0
 public override bool Visit(IdentifierStatic node)
 {
     Visit((LvalueExpression)node);
     return(true);
 }