javaDSL简单实现示例分享
作者:
DSL领域定义语言,用来描述特定领域的特定表达。比如画图从起点到终点;路由中的从A到B。这是关于画图的一个简单实现
复制代码 代码如下:
package com.vd.dsl;
import static com.vd.dsl.GraphBuilder.*;
public class Main {
public static void main(String[] args) {
Graph().edge().from("a").to("b").weigth(20.0).edge().from("b").to("c").weigth(10.0).printGraph();
}
}
复制代码 代码如下:
package com.vd.dsl;
public class Edge {
private Vertex fromVertex;
private Vertex toVertex;
public Vertex getFromVertex() {
return fromVertex;
}
public void setFromVertex(Vertex fromVertex) {
this.fromVertex = fromVertex;
}
public Vertex getToVertex() {
return toVertex;
}
public void setToVertex(Vertex toVertex) {
this.toVertex = toVertex;
}
public Double getWeight() {
return weight;
}
public void setWeight(Double weight) {
this.weight = weight;
}
private Double weight;
public Edge() {
}
@Override
public String toString() {
return fromVertex.getLabel()+ " to "+
toVertex.getLabel() + "with weigth "+
this.weight;
}
}