-
Notifications
You must be signed in to change notification settings - Fork 8.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
56b82fb
commit 5fc0140
Showing
24 changed files
with
284 additions
and
80 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
26 changes: 26 additions & 0 deletions
26
core/src/main/java/com/alibaba/druid/sql/dialect/presto/ast/PrestoColumnConstraint.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
package com.alibaba.druid.sql.dialect.presto.ast; | ||
|
||
import com.alibaba.druid.DbType; | ||
import com.alibaba.druid.sql.ast.statement.SQLColumnConstraint; | ||
import com.alibaba.druid.sql.ast.statement.SQLConstraintImpl; | ||
import com.alibaba.druid.sql.visitor.SQLASTVisitor; | ||
|
||
public class PrestoColumnConstraint extends SQLConstraintImpl implements SQLColumnConstraint { | ||
public PrestoColumnConstraint() { | ||
dbType = DbType.presto; | ||
} | ||
@Override | ||
protected void accept0(SQLASTVisitor v) {} | ||
|
||
@Override | ||
public PrestoColumnConstraint clone() { | ||
PrestoColumnConstraint prestoColumnConstraint = new PrestoColumnConstraint(); | ||
cloneTo(prestoColumnConstraint); | ||
return prestoColumnConstraint; | ||
} | ||
|
||
public void cloneTo(PrestoColumnConstraint x) { | ||
super.cloneTo(x); | ||
x.dbType = dbType; | ||
} | ||
} |
41 changes: 41 additions & 0 deletions
41
core/src/main/java/com/alibaba/druid/sql/dialect/presto/ast/PrestoColumnWith.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
package com.alibaba.druid.sql.dialect.presto.ast; | ||
|
||
import com.alibaba.druid.sql.ast.statement.SQLAssignItem; | ||
import com.alibaba.druid.sql.dialect.presto.visitor.PrestoASTVisitor; | ||
import com.alibaba.druid.sql.visitor.SQLASTVisitor; | ||
|
||
import java.util.ArrayList; | ||
import java.util.List; | ||
|
||
public class PrestoColumnWith extends PrestoColumnConstraint implements PrestoObject { | ||
private final List<SQLAssignItem> properties; | ||
|
||
public PrestoColumnWith() { | ||
properties = new ArrayList<>(); | ||
} | ||
|
||
public void addProperty(SQLAssignItem sqlAssignItem) { | ||
if (sqlAssignItem != null) { | ||
sqlAssignItem.setParent(this); | ||
properties.add(sqlAssignItem); | ||
} | ||
} | ||
|
||
public List<SQLAssignItem> getProperties() { | ||
return properties; | ||
} | ||
|
||
@Override | ||
public void accept0(PrestoASTVisitor visitor) { | ||
if (visitor.visit(this)) { | ||
acceptChild(visitor, properties); | ||
} | ||
} | ||
|
||
@Override | ||
public void accept0(SQLASTVisitor visitor) { | ||
if (visitor instanceof PrestoASTVisitor) { | ||
accept0((PrestoASTVisitor) visitor); | ||
} | ||
} | ||
} |
10 changes: 8 additions & 2 deletions
10
core/src/main/java/com/alibaba/druid/sql/dialect/presto/ast/PrestoObject.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,14 @@ | ||
package com.alibaba.druid.sql.dialect.presto.ast; | ||
|
||
import com.alibaba.druid.sql.ast.SQLObject; | ||
import com.alibaba.druid.sql.dialect.presto.visitor.PrestoVisitor; | ||
import com.alibaba.druid.sql.dialect.presto.visitor.PrestoASTVisitor; | ||
import com.alibaba.druid.sql.visitor.SQLASTVisitor; | ||
|
||
public interface PrestoObject extends SQLObject { | ||
void accept0(PrestoVisitor visitor); | ||
void accept0(PrestoASTVisitor visitor); | ||
default void accept0(SQLASTVisitor visitor) { | ||
if (visitor instanceof PrestoASTVisitor) { | ||
accept0((PrestoASTVisitor) visitor); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.