| Package | Description | 
|---|---|
| org.clafer.ast | 
 This package provides the language for building Clafer AST. 
 | 
| org.clafer.ast.analysis | 
 This package provides various analysis and optimizations to perform on the
 AST. 
 | 
| Modifier and Type | Field and Description | 
|---|---|
protected AstAbstractClafer | 
AstClafer.claferClafer  | 
| Modifier and Type | Method and Description | 
|---|---|
AstAbstractClafer | 
AstModel.addAbstract(String name)
Add a new abstract Clafer to the model. 
 | 
AstAbstractClafer | 
AstAbstractClafer.extending(AstAbstractClafer superClafer)
Set the supertype of this Clafer. 
 | 
AstAbstractClafer | 
AstClafer.getSuperClafer()
Returns the supertype of this Clafer. 
 | 
AstAbstractClafer | 
AstUpcast.getTarget()  | 
AstAbstractClafer | 
AstModel.getTypeHierarchyRoot()
Returns the type every non-primitive type extends from. 
 | 
AstAbstractClafer | 
AstAbstractClafer.refTo(AstClafer targetType)
Set this Clafer's reference to target type. 
 | 
AstAbstractClafer | 
AstAbstractClafer.refToUnique(AstClafer targetType)
Set this Clafer's reference to target type along with a uniqueness
 constraint. 
 | 
AstAbstractClafer | 
AstAbstractClafer.withGroupCard(Card groupCard)
Set this Clafer's group cardinality. 
 | 
AstAbstractClafer | 
AstAbstractClafer.withGroupCard(int low)
Set this Clafer's low group cardinality and set the high group
 cardinality to unbounded. 
 | 
AstAbstractClafer | 
AstAbstractClafer.withGroupCard(int low,
                          int high)
Set this Clafer's group cardinality. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
static List<AstAbstractClafer> | 
AstUtil.getAbstractClafersInSubOrder(AstModel model)
Find the abstract Clafers such that the subclafers appear before the
 super clafers. 
 | 
List<AstAbstractClafer> | 
AstModel.getAbstracts()
Returns all the abstract Clafers 
 | 
static List<AstAbstractClafer> | 
AstUtil.getSupers(AstClafer clafer)
Finds all the supertypes of the Clafer in order of lowest to highest. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
AstConcreteClafer | 
AstConcreteClafer.extending(AstAbstractClafer superClafer)
Set the supertype of this Clafer. 
 | 
AstClafer | 
AstPrimClafer.extending(AstAbstractClafer superClafer)
Set the supertype of this Clafer. 
 | 
AstAbstractClafer | 
AstAbstractClafer.extending(AstAbstractClafer superClafer)
Set the supertype of this Clafer. 
 | 
AstModel | 
AstModel.extending(AstAbstractClafer superClafer)  | 
AstClafer | 
AstClafer.extending(AstAbstractClafer superClafer)
Set the supertype of this Clafer. 
 | 
static boolean | 
AstUtil.isTypeRoot(AstAbstractClafer clafer)
Detects if the Clafer is the implicit type root of the model. 
 | 
static AstSetExpr | 
Asts.upcast(AstSetExpr base,
            AstAbstractClafer target)
Upcast an expression. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
List<AstAbstractClafer> | 
Analysis.getAbstractClafers()  | 
Map<AstAbstractClafer,Offsets> | 
Analysis.getOffsetMap()  | 
Pair<AstAbstractClafer,Integer> | 
Analysis.getSuperId(AstClafer clafer,
                    int id)  | 
List<Pair<AstAbstractClafer,Integer>> | 
Analysis.getSuperIds(AstClafer clafer,
                      int id)  | 
| Modifier and Type | Method and Description | 
|---|---|
Offsets | 
Analysis.getOffsets(AstAbstractClafer clafer)  | 
Pair<AstClafer,Integer> | 
Analysis.getSubId(AstAbstractClafer clafer,
                int id)  | 
| Modifier and Type | Method and Description | 
|---|---|
Analysis | 
Analysis.setOffsetMap(Map<AstAbstractClafer,Offsets> offsetMap)  | 
Copyright © 2013. All Rights Reserved.