예제 #1
0
	public bool testNodeDup() {
		factory = new ASTFactory();
		factory.setMaxNodeType(49);
		AST t = factory.create();
		bool a = t.Equals(factory.dup(t));
		bool b = !t.Equals(null);
		AST u = factory.create(49,"","ASTType49");
		bool c = checkNode(factory.dup(u),typeof(ASTType49), 49);
		bool d = u.Equals(factory.dup(u));
		return a&&b&&c&&d;
	}
예제 #2
0
	public bool testDynamicHeteroCreate() {
		factory = new ASTFactory();
		factory.setMaxNodeType(55);
		factory.setTokenTypeASTNodeType(49,"ASTType49");
		AST t = factory.create(49);
		bool a = checkNode(t, typeof(ASTType49), 49);
		AST u = factory.create(55);
		bool b = checkNode(u, typeof(CommonAST), 55);
		AST v = factory.create(49,"","MyAST");
		bool c = checkNode(v, typeof(MyAST), 49);
		return a&&b&&c;
	}
예제 #3
0
    public bool testNodeDup()
    {
        factory = new ASTFactory();
        factory.setMaxNodeType(49);
        AST  t = factory.create();
        bool a = t.Equals(factory.dup(t));
        bool b = !t.Equals(null);
        AST  u = factory.create(49, "", "ASTType49");
        bool c = checkNode(factory.dup(u), typeof(ASTType49), 49);
        bool d = u.Equals(factory.dup(u));

        return(a && b && c && d);
    }
예제 #4
0
    public bool testDynamicHeteroCreate()
    {
        factory = new ASTFactory();
        factory.setMaxNodeType(55);
        factory.setTokenTypeASTNodeType(49, "ASTType49");
        AST  t = factory.create(49);
        bool a = checkNode(t, typeof(ASTType49), 49);
        AST  u = factory.create(55);
        bool b = checkNode(u, typeof(CommonAST), 55);
        AST  v = factory.create(49, "", "MyAST");
        bool c = checkNode(v, typeof(MyAST), 49);

        return(a && b && c);
    }
예제 #5
0
	public bool testHeteroTreeDup() {
		factory = new ASTFactory();
		factory.setMaxNodeType(49);
		// create a tree and try to dup:
		// ( [type 1] [type 2] ( [type 49] [type 3 #2] ) [type 3] )
		AST x = factory.create(1,"[type 1]","MyAST"); // will be root
		AST y = factory.create(2,"[type 2]","MyAST");
		AST z = factory.create(3,"[type 3]","MyAST");
		AST sub = factory.create(49,"[type 49]","ASTType49");
		sub.addChild(factory.create(3,"[type 3 #2]","MyAST"));
		AST t = factory.make(new AST[] {x,y,sub,z});
		AST dup_t = factory.dupList(t);
        // check structure
		bool a = dup_t.EqualsList(t);
        // check types
        bool b = equalsNodeTypesList(t,dup_t);

		return a&&b;
	}
예제 #6
0
    public bool testHeteroTreeDup()
    {
        factory = new ASTFactory();
        factory.setMaxNodeType(49);
        // create a tree and try to dup:
        // ( [type 1] [type 2] ( [type 49] [type 3 #2] ) [type 3] )
        AST x   = factory.create(1, "[type 1]", "MyAST");     // will be root
        AST y   = factory.create(2, "[type 2]", "MyAST");
        AST z   = factory.create(3, "[type 3]", "MyAST");
        AST sub = factory.create(49, "[type 49]", "ASTType49");

        sub.addChild(factory.create(3, "[type 3 #2]", "MyAST"));
        AST t     = factory.make(new AST[] { x, y, sub, z });
        AST dup_t = factory.dupList(t);
        // check structure
        bool a = dup_t.EqualsList(t);
        // check types
        bool b = equalsNodeTypesList(t, dup_t);

        return(a && b);
    }
예제 #7
0
 public TestASTFactory()
 {
     factory = new ASTFactory();
     factory.setMaxNodeType(56);
 }
예제 #8
0
 static public void initializeASTFactory(ASTFactory factory)
 {
     factory.setMaxNodeType(38);
 }
예제 #9
0
	static public void initializeASTFactory( ASTFactory factory )
	{
		factory.setMaxNodeType(11);
	}
예제 #10
0
 public TestASTFactory()
 {
     factory = new ASTFactory();
     factory.setMaxNodeType(56);
 }