|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.jdt.internal.compiler.ast.ASTNode
org.jmlspecs.jml4.ast.JmlClause
public abstract class JmlClause
An abstraction of a JML clause which can be either a: - type body clause, - method spec clause, - statement body clause. While we could create subclasses for each of the categories mentioned above we have currently chosen not to do so (keeping the type hierarchy a bit flatter and simpler). Features of instance of this class: - clause has a keyword - argument to the clause is either a single expression and/or a non-empty array of expressions. The type of the single expression is assumed to be a boolean (since it is generally a predicate). No assumption is made about the type of the expression array.
Field Summary | |
---|---|
static Expression[] |
EMPTY_EXPR_LIST
|
Expression |
expr
|
static char[] |
JML_RUNTIME_EXCEPTION
|
static Expression |
NULL_EXPR
|
Fields inherited from interface org.jmlspecs.jml4.compiler.JmlConstants |
---|
ALL_PROCESSING_STAGES, CODE_ANALYSIS, CODE_GENERATION, COMMA, EMPTY_STRING, ENABLE_SPEC_MERGE, JML_ANON, JML_LEVEL_DBC, JML_LEVEL_NNTS, JML_LEVEL_NO_JML, LAST_PROCESSING_STAGE, PARSE, RESOLVE, SEMICOLON, SLASH, SPACE, SQUOTE, SUPER, THIS |
Method Summary | |
---|---|
void |
analyseCode(BlockScope scope,
FlowContext context,
FlowInfo flowInfo)
|
java.lang.String |
clauseKeyword()
|
void |
generateCheck(BlockScope currentScope,
AbstractMethodDeclaration methodDecl,
CodeStream codeStream)
|
boolean |
hasExpr()
|
boolean |
hasNonKeywordExpr()
|
boolean |
isRedundant()
|
java.lang.String |
kind()
Returns the kind of this clause as a String for the purpose of error reporting -- e.g. |
java.lang.StringBuffer |
print(int indent,
java.lang.StringBuffer output)
|
void |
resolve(BlockScope scope)
|
void |
traverse(ASTVisitor visitor,
BlockScope scope)
|
Methods inherited from class org.eclipse.jdt.internal.compiler.ast.ASTNode |
---|
checkInvocationArguments, concreteStatement, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isSuper, isThis, isTypeUseDeprecated, printAnnotations, printIndent, printModifiers, resolveAnnotations, resolveDeprecatedAnnotations, sourceEnd, sourceStart, toString |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final char[] JML_RUNTIME_EXCEPTION
public static final Expression NULL_EXPR
public static final Expression[] EMPTY_EXPR_LIST
public final Expression expr
Method Detail |
---|
public java.lang.StringBuffer print(int indent, java.lang.StringBuffer output)
print
in class ASTNode
public void resolve(BlockScope scope)
public void analyseCode(BlockScope scope, FlowContext context, FlowInfo flowInfo)
public void generateCheck(BlockScope currentScope, AbstractMethodDeclaration methodDecl, CodeStream codeStream)
public boolean hasExpr()
public boolean hasNonKeywordExpr()
public java.lang.String kind()
public java.lang.String clauseKeyword()
public boolean isRedundant()
public void traverse(ASTVisitor visitor, BlockScope scope)
traverse
in class ASTNode
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |