net.ericaro.diezel.core.builder.Diezel.xsd Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of diezel-maven-plugin Show documentation
Show all versions of diezel-maven-plugin Show documentation
An Embedded Domain Specific Language Parser Generator PLugin compiler
The newest version!
generic defines a generic type ( like "U extends V").
generic type name, usually
U or V
type that follow the super
in the java generic syntax.
type that follow the
extends in the java generic syntax.
Fully qualified package name.
Java class name that:
- defines the language itself (along with it's package name)
- is the class name for the starting state.
- is the base for state naming convention
Should be a valid java identifier.
declare the list of states
Override the state's name denoted by its "path".
the path, is a dot-separated list of transition's aliases.
the path to the state you want to fix the name.
the path is a comma separated list of aliases to reach the state.
A transition is a method call that is used to
chain methods.
javadoc content without
the /* and */
capture a generic type to
the next state.
drop a generic type when moving to the next step.
the actual return type
when this transition reaches the last state of the graph.
the actual method like:
"signature name(types) throws Exceptions"
the transition name or
alias, as it is referenced in the language expression.
A transitionImplementation adds body java code to the language's
transition.
the transition name or
alias, as it is referenced in the language expression.
Diezel element defines a single Diezel language.
A Diezel Language is a set of interfaces that fully defines
state/transition network of chained methods.
A Diezel language does not provide any implementation. Just
the definition of this network.
Transitions are defined as XML Element transitions.
The network layout is described using a regular expression.
States are deduced from the regular expression.
It is possible to override the default state name
given the state path to it.
header string for every generated file.
without the /* */ symbols
add a generic to be captured by this transition,
and append it to the next state.
for instance a call like
"public <T> State<T> with(class<T> type);"
captures the generic "T".
The java name for this language, or language implementation.
the regular expression that defines the state/transition network.
example: "a|b,c,d?, e*"
See Diezel site for available operators.
Transitions that defines this language.
states are self defined by the regular expression. Here you can overwrite
those definitions, mapping every state by its path.
Diezel Implementation defines
an Implementation for a Diezel language.
A Diezel Implementation is a set of classes that implements
the one or the language, and whose methods are the transitionss
as defined in the language.
The responsibility for the implementation is to provide
methods' body for every transitions.
a qualified name to the
diezel language that it implements.
A qualified name is the java
qualified name of the the first Guide
for the language:
net.ericaro.diezel.MyGuide
the set of transition,
that
are referenced in the language expression