Modifier and Type | Class and Description |
---|---|
static class |
Ast.Weak
Provides AST construction methods with weaker type parameter constraints.
|
Modifier and Type | Method and Description |
---|---|
static edu.ksu.cis.santos.mdcf.dml.ast.exp.AccessExp |
accessExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp,
String id) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.ApplyExp |
applyExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp fun,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp arg) |
static Attribute |
attribute(Iterable<AttributeAnnotation> annotations,
Type type,
String name,
Optional<Initialization> init) |
static BasicInit |
basicInit(String value) |
static BasicType |
basicType(String name,
Iterable<NamedType> supers) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.BinaryBasicOpExp |
binaryBasicOpExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp left,
String op,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp right) |
static ConstAnnotation |
constAnnotation(FeatureLevel level,
String qualifier) |
static DataAnnotation |
dataAnnotation() |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.DefaultMatchCaseBind |
defaultMatchCaseBind() |
static EitherInit |
eitherInit(int index,
Initialization init) |
static EitherType |
eitherType(Iterable<Type> choiceTypes) |
static Feature |
feature(Iterable<FeatureAnnotation> annotations,
String name,
Iterable<NamedType> supers,
Iterable<Member> members) |
static FeatureInit |
featureInit(Iterable<NamedType> types,
Iterable<Attribute> attributes) |
static FeatureLevelAnnotation |
featureLevelAnnotation(FeatureLevel level,
String qualifier) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.FunExp |
funExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Param param,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp body) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.InstanceOfExp |
instanceOfExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp,
Type testType) |
static Invariant |
invariant(String name,
edu.ksu.cis.santos.mdcf.dml.ast.PredicateType predicateType,
edu.ksu.cis.santos.mdcf.dml.ast.exp.FunExp predicate) |
static <T> List<T> |
list(Iterable<T> ts) |
static <T> List<T> |
list(T... ts) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.LiteralExp |
literalExp(String value) |
static edu.ksu.cis.santos.mdcf.dml.ast.MapInit |
mapInit(Iterable<Initialization> keyInits,
Iterable<Initialization> valueInits) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.MapOpExp |
mapOpExp(String id,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp) |
static edu.ksu.cis.santos.mdcf.dml.ast.MapType |
mapType(Type keyType,
Type valueType) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCase |
matchCase(edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCaseBind bind,
Optional<edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp> cond,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp body) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchExp |
matchExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp,
List<edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCase> cases) |
static Model |
model(Iterable<Declaration> declarations) |
static MultiplicityAnnotation |
multiplicityAnnotation(int lo,
int hi,
Optional<String> typeName) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.NamedMatchCaseBind |
namedMatchCaseBind(String id,
Optional<Type> type) |
static NamedType |
namedType(String name) |
static <T> Optional<T> |
none() |
static NoneInit |
noneInit() |
static OptionType |
optionType(Type elementType) |
static OverrideAnnotation |
overrideAnnotation() |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.Param |
param(Optional<Type> type,
String name) |
static RefinedType |
refinedType(Iterable<NamedType> types,
Iterable<Attribute> attributes) |
static Requirement |
requirement(String name,
Iterable<Member> members) |
static SeqInit |
seqInit(Iterable<Initialization> inits) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.SeqOpExp |
seqOpExp(String id,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp) |
static SeqType |
seqType(Type elementType) |
static SetInit |
setInit(Iterable<Initialization> inits) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.SetOpExp |
setOpExp(String id,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp) |
static SettableAnnotation |
settableAnnotation() |
static SetType |
setType(Type elementType) |
static <T> Optional<T> |
some(T t) |
static SomeInit |
someInit(Initialization init) |
static TupleInit |
tupleInit(Iterable<Initialization> inits) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.TupleOpExp |
tupleOpExp(String id,
edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp) |
static TupleType |
tupleType(Iterable<Type> elementTypes) |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.UnknownExp |
unknownExp() |
static edu.ksu.cis.santos.mdcf.dml.ast.exp.VarRefExp |
varRefExp(String id) |
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.AccessExp accessExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp, String id)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.ApplyExp applyExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp fun, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp arg)
public static Attribute attribute(Iterable<AttributeAnnotation> annotations, Type type, String name, Optional<Initialization> init)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.BinaryBasicOpExp binaryBasicOpExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp left, String op, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp right)
public static ConstAnnotation constAnnotation(FeatureLevel level, String qualifier)
public static DataAnnotation dataAnnotation()
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.DefaultMatchCaseBind defaultMatchCaseBind()
public static EitherInit eitherInit(int index, Initialization init)
public static EitherType eitherType(Iterable<Type> choiceTypes)
public static Feature feature(Iterable<FeatureAnnotation> annotations, String name, Iterable<NamedType> supers, Iterable<Member> members)
public static FeatureInit featureInit(Iterable<NamedType> types, Iterable<Attribute> attributes)
public static FeatureLevelAnnotation featureLevelAnnotation(FeatureLevel level, String qualifier)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.FunExp funExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Param param, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp body)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.InstanceOfExp instanceOfExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp, Type testType)
public static Invariant invariant(String name, edu.ksu.cis.santos.mdcf.dml.ast.PredicateType predicateType, edu.ksu.cis.santos.mdcf.dml.ast.exp.FunExp predicate)
@SafeVarargs public static <T> List<T> list(T... ts)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.LiteralExp literalExp(String value)
public static edu.ksu.cis.santos.mdcf.dml.ast.MapInit mapInit(Iterable<Initialization> keyInits, Iterable<Initialization> valueInits)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.MapOpExp mapOpExp(String id, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCase matchCase(edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCaseBind bind, Optional<edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp> cond, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp body)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchExp matchExp(edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp, List<edu.ksu.cis.santos.mdcf.dml.ast.exp.MatchCase> cases)
public static Model model(Iterable<Declaration> declarations)
public static MultiplicityAnnotation multiplicityAnnotation(int lo, int hi, Optional<String> typeName)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.NamedMatchCaseBind namedMatchCaseBind(String id, Optional<Type> type)
public static <T> Optional<T> none()
public static NoneInit noneInit()
public static OptionType optionType(Type elementType)
public static OverrideAnnotation overrideAnnotation()
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.Param param(Optional<Type> type, String name)
public static RefinedType refinedType(Iterable<NamedType> types, Iterable<Attribute> attributes)
public static Requirement requirement(String name, Iterable<Member> members)
public static SeqInit seqInit(Iterable<Initialization> inits)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.SeqOpExp seqOpExp(String id, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp)
public static SetInit setInit(Iterable<Initialization> inits)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.SetOpExp setOpExp(String id, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp)
public static SettableAnnotation settableAnnotation()
public static <T> Optional<T> some(T t)
public static SomeInit someInit(Initialization init)
public static TupleInit tupleInit(Iterable<Initialization> inits)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.TupleOpExp tupleOpExp(String id, edu.ksu.cis.santos.mdcf.dml.ast.exp.Exp exp)
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.UnknownExp unknownExp()
public static edu.ksu.cis.santos.mdcf.dml.ast.exp.VarRefExp varRefExp(String id)