001package gudusoft.gsqlparser.stmt; 002 003 004import gudusoft.gsqlparser.EDbVendor; 005import gudusoft.gsqlparser.ESqlStatementType; 006import gudusoft.gsqlparser.TCustomSqlStatement; 007import gudusoft.gsqlparser.nodes.TColumnDefinitionList; 008import gudusoft.gsqlparser.nodes.TCreateTypeSqlNode; 009import gudusoft.gsqlparser.nodes.TObjectName; 010import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 011 012public class TCreateTypeStmt extends TCustomSqlStatement { 013 private TObjectName typeName; 014 private TColumnDefinitionList attributeList; 015 016 public TObjectName getTypeName() { 017 return typeName; 018 } 019 020 public TColumnDefinitionList getAttributeList() { 021 return attributeList; 022 } 023 024 public TCreateTypeStmt(EDbVendor dbvendor) { 025 super(dbvendor); 026 sqlstatementtype = ESqlStatementType.sstcreatetype; 027 } 028 029 public int doParseStatement(TCustomSqlStatement psql) { 030 if (rootNode == null) return -1; 031 super.doParseStatement(psql); 032 TCreateTypeSqlNode sqlNode = (TCreateTypeSqlNode)rootNode; 033 this.typeName = sqlNode.getTypeName(); 034 this.attributeList = sqlNode.getAttributeList(); 035 036 return 0; 037 } 038 039 public void accept(TParseTreeVisitor v) { 040 v.preVisit(this); 041 v.postVisit(this); 042 } 043 044 public void acceptChildren(TParseTreeVisitor v) { 045 v.preVisit(this); 046 v.postVisit(this); 047 } 048}