|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectat.dms.kjc.KjcEmptyVisitor
public class KjcEmptyVisitor
This is a visitor that just recurses into children at every node. It can be extended to add some functionality at a given node. Suggested from: Max R. Andersen(max@cs.auc.dk)
Field Summary |
---|
Fields inherited from interface at.dms.kjc.Constants |
---|
CMP_VERSION, JAV_CLASS, JAV_CLONE, JAV_CLONEABLE, JAV_CONSTRUCTOR, JAV_ERROR, JAV_EXCEPTION, JAV_INIT, JAV_LENGTH, JAV_NAME_SEPARATOR, JAV_OBJECT, JAV_OUTER_THIS, JAV_RUNTIME, JAV_RUNTIME_EXCEPTION, JAV_STATIC_INIT, JAV_STRING, JAV_STRINGBUFFER, JAV_THIS, JAV_THROWABLE, OPE_BAND, OPE_BNOT, OPE_BOR, OPE_BSR, OPE_BXOR, OPE_EQ, OPE_GE, OPE_GT, OPE_LE, OPE_LNOT, OPE_LT, OPE_MINUS, OPE_NE, OPE_PERCENT, OPE_PLUS, OPE_POSTDEC, OPE_POSTINC, OPE_PREDEC, OPE_PREINC, OPE_SIMPLE, OPE_SL, OPE_SLASH, OPE_SR, OPE_STAR, TID_ARRAY, TID_BIT, TID_BOOLEAN, TID_BYTE, TID_CHAR, TID_CLASS, TID_DOUBLE, TID_FLOAT, TID_INT, TID_LONG, TID_SHORT, TID_VECTOR, TID_VOID, VECTOR_EMPTY |
Constructor Summary | |
---|---|
KjcEmptyVisitor()
|
Method Summary | |
---|---|
void |
visitArgs(JExpression[] args)
prints an array length expression |
void |
visitArrayAccessExpression(JArrayAccessExpression self,
JExpression prefix,
JExpression accessor)
prints an array length expression |
void |
visitArrayInitializer(JArrayInitializer self,
JExpression[] elems)
prints an array initializer expression |
void |
visitArrayLengthExpression(JArrayLengthExpression self,
JExpression prefix)
prints an array length expression |
void |
visitAssignmentExpression(JAssignmentExpression self,
JExpression left,
JExpression right)
prints an assignment expression |
void |
visitBinaryExpression(JBinaryExpression self,
String oper,
JExpression left,
JExpression right)
prints an array allocator expression |
void |
visitBitwiseComplementExpression(JUnaryExpression self,
JExpression expr)
prints a bitwise complement expression |
void |
visitBitwiseExpression(JBitwiseExpression self,
int oper,
JExpression left,
JExpression right)
prints a compound assignment expression |
void |
visitBlockStatement(JBlock self,
JavaStyleComment[] comments)
prints an expression statement |
void |
visitBooleanLiteral(boolean value)
prints a boolean literal |
void |
visitBreakStatement(JBreakStatement self,
String label)
prints a break statement |
void |
visitByteLiteral(byte value)
prints a byte literal |
void |
visitCastExpression(JCastExpression self,
JExpression expr,
CType type)
prints a cast expression |
void |
visitCatchClause(JCatchClause self,
JFormalParameter exception,
JBlock body)
prints an array length expression |
void |
visitCharLiteral(char value)
prints a character literal |
void |
visitClassBody(JTypeDeclaration[] decls,
JFieldDeclaration[] fields,
JMethodDeclaration[] methods,
JPhylum[] body)
visits a class body |
void |
visitClassDeclaration(JClassDeclaration self,
int modifiers,
String ident,
String superName,
CClassType[] interfaces,
JPhylum[] body,
JFieldDeclaration[] fields,
JMethodDeclaration[] methods,
JTypeDeclaration[] decls)
prints a class declaration |
void |
visitClassExpression(JClassExpression self,
CType type)
prints a class expression |
void |
visitClassImport(String name)
prints an array length expression |
void |
visitComment(JavaStyleComment comment)
prints an array length expression |
void |
visitComments(JavaStyleComment[] comments)
prints an array length expression |
void |
visitCompilationUnit(JCompilationUnit self,
JPackageName packageName,
JPackageImport[] importedPackages,
JClassImport[] importedClasses,
JTypeDeclaration[] typeDeclarations)
prints a compilation unit |
void |
visitCompoundAssignmentExpression(JCompoundAssignmentExpression self,
int oper,
JExpression left,
JExpression right)
prints a compound expression |
void |
visitCompoundStatement(JCompoundStatement self,
JStatement[] body)
prints a compound statement |
void |
visitCompoundStatement(JStatement[] body)
prints a compound statement |
void |
visitConditionalExpression(JConditionalExpression self,
JExpression cond,
JExpression left,
JExpression right)
prints a conditional expression |
void |
visitConstructorCall(JConstructorCall self,
boolean functorIsThis,
JExpression[] params)
prints an array length expression |
void |
visitConstructorDeclaration(JConstructorDeclaration self,
int modifiers,
String ident,
JFormalParameter[] parameters,
CClassType[] exceptions,
JConstructorBlock body)
prints a method declaration |
void |
visitContinueStatement(JContinueStatement self,
String label)
prints a continue statement |
void |
visitDoStatement(JDoStatement self,
JExpression cond,
JStatement body)
prints a do statement |
void |
visitDoubleLiteral(double value)
prints a double literal |
void |
visitEmittedTextExpression(JEmittedTextExpression self,
Object[] parts)
visiting emitted text with possible embedded expressions. |
void |
visitEmptyStatement(JEmptyStatement self)
prints a empty statement |
void |
visitEqualityExpression(JEqualityExpression self,
boolean equal,
JExpression left,
JExpression right)
prints an equality expression |
void |
visitExpressionListStatement(JExpressionListStatement self,
JExpression[] expr)
prints an expression list statement |
void |
visitExpressionStatement(JExpressionStatement self,
JExpression expr)
prints an expression statement |
void |
visitFieldDeclaration(JFieldDeclaration self,
int modifiers,
CType type,
String ident,
JExpression expr)
prints a field declaration |
void |
visitFieldExpression(JFieldAccessExpression self,
JExpression left,
String ident)
prints a field expression |
void |
visitFloatLiteral(float value)
prints a float literal |
void |
visitFormalParameters(JFormalParameter self,
boolean isFinal,
CType type,
String ident)
prints an array length expression |
void |
visitForStatement(JForStatement self,
JStatement init,
JExpression cond,
JStatement incr,
JStatement body)
prints a for statement |
void |
visitIfStatement(JIfStatement self,
JExpression cond,
JStatement thenClause,
JStatement elseClause)
prints a if statement |
void |
visitInnerClassDeclaration(JClassDeclaration self,
int modifiers,
String ident,
String superName,
CClassType[] interfaces,
JTypeDeclaration[] decls,
JPhylum[] body,
JFieldDeclaration[] fields,
JMethodDeclaration[] methods)
prints a class declaration |
void |
visitInstanceofExpression(JInstanceofExpression self,
JExpression expr,
CType dest)
prints an instanceof expression |
void |
visitInterfaceDeclaration(JInterfaceDeclaration self,
int modifiers,
String ident,
CClassType[] interfaces,
JPhylum[] body,
JMethodDeclaration[] methods)
prints an interface declaration |
void |
visitIntLiteral(int value)
prints a int literal |
void |
visitJavadoc(JavadocComment comment)
prints an array length expression |
void |
visitLabeledStatement(JLabeledStatement self,
String label,
JStatement stmt)
prints a labeled statement |
void |
visitLocalVariableExpression(JLocalVariableExpression self,
String ident)
prints a local variable expression |
void |
visitLogicalComplementExpression(JUnaryExpression self,
JExpression expr)
prints a logical complement expression |
void |
visitLongLiteral(long value)
prints a long literal |
void |
visitMethodCallExpression(JMethodCallExpression self,
JExpression prefix,
String ident,
JExpression[] args)
prints a method call expression |
void |
visitMethodDeclaration(JMethodDeclaration self,
int modifiers,
CType returnType,
String ident,
JFormalParameter[] parameters,
CClassType[] exceptions,
JBlock body)
prints a method declaration |
void |
visitNameExpression(JNameExpression self,
JExpression prefix,
String ident)
prints a name expression |
void |
visitNewArrayExpression(JNewArrayExpression self,
CType type,
JExpression[] dims,
JArrayInitializer init)
prints an array allocator expression |
void |
visitNullLiteral()
prints a null literal |
void |
visitPackageImport(String name)
prints an array length expression |
void |
visitPackageName(String name)
prints an array length expression |
void |
visitParenthesedExpression(JParenthesedExpression self,
JExpression expr)
prints a parenthesed expression |
void |
visitPostfixExpression(JPostfixExpression self,
int oper,
JExpression expr)
prints a postfix expression |
void |
visitPrefixExpression(JPrefixExpression self,
int oper,
JExpression expr)
prints a prefix expression |
void |
visitQualifiedAnonymousCreation(JQualifiedAnonymousCreation self,
JExpression prefix,
String ident,
JExpression[] params,
JClassDeclaration decl)
Prints an unqualified anonymous class instance creation expression. |
void |
visitQualifiedInstanceCreation(JQualifiedInstanceCreation self,
JExpression prefix,
String ident,
JExpression[] params)
Prints an unqualified instance creation expression. |
void |
visitRelationalExpression(JRelationalExpression self,
int oper,
JExpression left,
JExpression right)
prints a shift expressiona |
void |
visitReturnStatement(JReturnStatement self,
JExpression expr)
prints a return statement |
void |
visitShiftExpression(JShiftExpression self,
int oper,
JExpression left,
JExpression right)
prints a shift expression |
void |
visitShortLiteral(short value)
prints a short literal |
void |
visitStringLiteral(String value)
prints a string literal |
void |
visitSuperExpression(JSuperExpression self)
prints a super expression |
void |
visitSwitchGroup(JSwitchGroup self,
JSwitchLabel[] labels,
JStatement[] stmts)
prints an array length expression |
void |
visitSwitchLabel(JSwitchLabel self,
JExpression expr)
prints an array length expression |
void |
visitSwitchStatement(JSwitchStatement self,
JExpression expr,
JSwitchGroup[] body)
prints a switch statement |
void |
visitSynchronizedStatement(JSynchronizedStatement self,
JExpression cond,
JStatement body)
prints a synchronized statement |
void |
visitThisExpression(JThisExpression self,
JExpression prefix)
prints a this expression |
void |
visitThrowStatement(JThrowStatement self,
JExpression expr)
prints a throw statement |
void |
visitTryCatchStatement(JTryCatchStatement self,
JBlock tryClause,
JCatchClause[] catchClauses)
prints a try-catch statement |
void |
visitTryFinallyStatement(JTryFinallyStatement self,
JBlock tryClause,
JBlock finallyClause)
prints a try-finally statement |
void |
visitTypeDeclarationStatement(JTypeDeclarationStatement self,
JTypeDeclaration decl)
prints a type declaration statement |
void |
visitTypeNameExpression(JTypeNameExpression self,
CType type)
prints a type name expression |
void |
visitUnaryMinusExpression(JUnaryExpression self,
JExpression expr)
prints an unary minus expression |
void |
visitUnaryPlusExpression(JUnaryExpression self,
JExpression expr)
prints an unary plus expression |
void |
visitUnaryPromoteExpression(JUnaryPromote self,
JExpression expr,
CType type)
prints a cast expression |
void |
visitUnqualifiedAnonymousCreation(JUnqualifiedAnonymousCreation self,
CClassType type,
JExpression[] params,
JClassDeclaration decl)
Prints an unqualified anonymous class instance creation expression. |
void |
visitUnqualifiedInstanceCreation(JUnqualifiedInstanceCreation self,
CClassType type,
JExpression[] params)
Prints an unqualified instance creation expression. |
void |
visitVariableDeclarationStatement(JVariableDeclarationStatement self,
JVariableDefinition[] vars)
prints a variable declaration statement |
void |
visitVariableDefinition(JVariableDefinition self,
int modifiers,
CType type,
String ident,
JExpression expr)
prints a variable declaration statement |
void |
visitWhileStatement(JWhileStatement self,
JExpression cond,
JStatement body)
prints a while statement |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public KjcEmptyVisitor()
Method Detail |
---|
public void visitCompilationUnit(JCompilationUnit self, JPackageName packageName, JPackageImport[] importedPackages, JClassImport[] importedClasses, JTypeDeclaration[] typeDeclarations)
visitCompilationUnit
in interface KjcVisitor
public void visitClassDeclaration(JClassDeclaration self, int modifiers, String ident, String superName, CClassType[] interfaces, JPhylum[] body, JFieldDeclaration[] fields, JMethodDeclaration[] methods, JTypeDeclaration[] decls)
visitClassDeclaration
in interface KjcVisitor
public void visitClassBody(JTypeDeclaration[] decls, JFieldDeclaration[] fields, JMethodDeclaration[] methods, JPhylum[] body)
KjcVisitor
visitClassBody
in interface KjcVisitor
public void visitInnerClassDeclaration(JClassDeclaration self, int modifiers, String ident, String superName, CClassType[] interfaces, JTypeDeclaration[] decls, JPhylum[] body, JFieldDeclaration[] fields, JMethodDeclaration[] methods)
visitInnerClassDeclaration
in interface KjcVisitor
public void visitInterfaceDeclaration(JInterfaceDeclaration self, int modifiers, String ident, CClassType[] interfaces, JPhylum[] body, JMethodDeclaration[] methods)
visitInterfaceDeclaration
in interface KjcVisitor
public void visitFieldDeclaration(JFieldDeclaration self, int modifiers, CType type, String ident, JExpression expr)
visitFieldDeclaration
in interface KjcVisitor
public void visitMethodDeclaration(JMethodDeclaration self, int modifiers, CType returnType, String ident, JFormalParameter[] parameters, CClassType[] exceptions, JBlock body)
visitMethodDeclaration
in interface KjcVisitor
public void visitConstructorDeclaration(JConstructorDeclaration self, int modifiers, String ident, JFormalParameter[] parameters, CClassType[] exceptions, JConstructorBlock body)
visitConstructorDeclaration
in interface KjcVisitor
public void visitWhileStatement(JWhileStatement self, JExpression cond, JStatement body)
visitWhileStatement
in interface KjcVisitor
public void visitVariableDeclarationStatement(JVariableDeclarationStatement self, JVariableDefinition[] vars)
visitVariableDeclarationStatement
in interface KjcVisitor
public void visitVariableDefinition(JVariableDefinition self, int modifiers, CType type, String ident, JExpression expr)
visitVariableDefinition
in interface KjcVisitor
public void visitTryCatchStatement(JTryCatchStatement self, JBlock tryClause, JCatchClause[] catchClauses)
visitTryCatchStatement
in interface KjcVisitor
public void visitTryFinallyStatement(JTryFinallyStatement self, JBlock tryClause, JBlock finallyClause)
visitTryFinallyStatement
in interface KjcVisitor
public void visitThrowStatement(JThrowStatement self, JExpression expr)
visitThrowStatement
in interface KjcVisitor
public void visitSynchronizedStatement(JSynchronizedStatement self, JExpression cond, JStatement body)
visitSynchronizedStatement
in interface KjcVisitor
public void visitSwitchStatement(JSwitchStatement self, JExpression expr, JSwitchGroup[] body)
visitSwitchStatement
in interface KjcVisitor
public void visitReturnStatement(JReturnStatement self, JExpression expr)
visitReturnStatement
in interface KjcVisitor
public void visitLabeledStatement(JLabeledStatement self, String label, JStatement stmt)
visitLabeledStatement
in interface KjcVisitor
public void visitIfStatement(JIfStatement self, JExpression cond, JStatement thenClause, JStatement elseClause)
visitIfStatement
in interface KjcVisitor
public void visitForStatement(JForStatement self, JStatement init, JExpression cond, JStatement incr, JStatement body)
visitForStatement
in interface KjcVisitor
public void visitCompoundStatement(JCompoundStatement self, JStatement[] body)
visitCompoundStatement
in interface KjcVisitor
public void visitCompoundStatement(JStatement[] body)
public void visitExpressionStatement(JExpressionStatement self, JExpression expr)
visitExpressionStatement
in interface KjcVisitor
public void visitExpressionListStatement(JExpressionListStatement self, JExpression[] expr)
visitExpressionListStatement
in interface KjcVisitor
public void visitEmptyStatement(JEmptyStatement self)
visitEmptyStatement
in interface KjcVisitor
public void visitDoStatement(JDoStatement self, JExpression cond, JStatement body)
visitDoStatement
in interface KjcVisitor
public void visitContinueStatement(JContinueStatement self, String label)
visitContinueStatement
in interface KjcVisitor
public void visitBreakStatement(JBreakStatement self, String label)
visitBreakStatement
in interface KjcVisitor
public void visitBlockStatement(JBlock self, JavaStyleComment[] comments)
visitBlockStatement
in interface KjcVisitor
public void visitTypeDeclarationStatement(JTypeDeclarationStatement self, JTypeDeclaration decl)
visitTypeDeclarationStatement
in interface KjcVisitor
public void visitUnaryPlusExpression(JUnaryExpression self, JExpression expr)
visitUnaryPlusExpression
in interface KjcVisitor
public void visitUnaryMinusExpression(JUnaryExpression self, JExpression expr)
visitUnaryMinusExpression
in interface KjcVisitor
public void visitBitwiseComplementExpression(JUnaryExpression self, JExpression expr)
visitBitwiseComplementExpression
in interface KjcVisitor
public void visitLogicalComplementExpression(JUnaryExpression self, JExpression expr)
visitLogicalComplementExpression
in interface KjcVisitor
public void visitTypeNameExpression(JTypeNameExpression self, CType type)
visitTypeNameExpression
in interface KjcVisitor
public void visitThisExpression(JThisExpression self, JExpression prefix)
visitThisExpression
in interface KjcVisitor
public void visitSuperExpression(JSuperExpression self)
visitSuperExpression
in interface KjcVisitor
public void visitShiftExpression(JShiftExpression self, int oper, JExpression left, JExpression right)
visitShiftExpression
in interface KjcVisitor
public void visitRelationalExpression(JRelationalExpression self, int oper, JExpression left, JExpression right)
visitRelationalExpression
in interface KjcVisitor
public void visitPrefixExpression(JPrefixExpression self, int oper, JExpression expr)
visitPrefixExpression
in interface KjcVisitor
public void visitPostfixExpression(JPostfixExpression self, int oper, JExpression expr)
visitPostfixExpression
in interface KjcVisitor
public void visitParenthesedExpression(JParenthesedExpression self, JExpression expr)
visitParenthesedExpression
in interface KjcVisitor
public void visitQualifiedAnonymousCreation(JQualifiedAnonymousCreation self, JExpression prefix, String ident, JExpression[] params, JClassDeclaration decl)
visitQualifiedAnonymousCreation
in interface KjcVisitor
public void visitQualifiedInstanceCreation(JQualifiedInstanceCreation self, JExpression prefix, String ident, JExpression[] params)
visitQualifiedInstanceCreation
in interface KjcVisitor
public void visitUnqualifiedAnonymousCreation(JUnqualifiedAnonymousCreation self, CClassType type, JExpression[] params, JClassDeclaration decl)
visitUnqualifiedAnonymousCreation
in interface KjcVisitor
public void visitUnqualifiedInstanceCreation(JUnqualifiedInstanceCreation self, CClassType type, JExpression[] params)
visitUnqualifiedInstanceCreation
in interface KjcVisitor
public void visitNewArrayExpression(JNewArrayExpression self, CType type, JExpression[] dims, JArrayInitializer init)
visitNewArrayExpression
in interface KjcVisitor
public void visitNameExpression(JNameExpression self, JExpression prefix, String ident)
visitNameExpression
in interface KjcVisitor
public void visitBinaryExpression(JBinaryExpression self, String oper, JExpression left, JExpression right)
visitBinaryExpression
in interface KjcVisitor
public void visitMethodCallExpression(JMethodCallExpression self, JExpression prefix, String ident, JExpression[] args)
visitMethodCallExpression
in interface KjcVisitor
public void visitLocalVariableExpression(JLocalVariableExpression self, String ident)
visitLocalVariableExpression
in interface KjcVisitor
public void visitInstanceofExpression(JInstanceofExpression self, JExpression expr, CType dest)
visitInstanceofExpression
in interface KjcVisitor
public void visitEqualityExpression(JEqualityExpression self, boolean equal, JExpression left, JExpression right)
visitEqualityExpression
in interface KjcVisitor
public void visitConditionalExpression(JConditionalExpression self, JExpression cond, JExpression left, JExpression right)
visitConditionalExpression
in interface KjcVisitor
public void visitCompoundAssignmentExpression(JCompoundAssignmentExpression self, int oper, JExpression left, JExpression right)
visitCompoundAssignmentExpression
in interface KjcVisitor
public void visitFieldExpression(JFieldAccessExpression self, JExpression left, String ident)
visitFieldExpression
in interface KjcVisitor
public void visitClassExpression(JClassExpression self, CType type)
visitClassExpression
in interface KjcVisitor
public void visitCastExpression(JCastExpression self, JExpression expr, CType type)
visitCastExpression
in interface KjcVisitor
public void visitUnaryPromoteExpression(JUnaryPromote self, JExpression expr, CType type)
visitUnaryPromoteExpression
in interface KjcVisitor
public void visitBitwiseExpression(JBitwiseExpression self, int oper, JExpression left, JExpression right)
visitBitwiseExpression
in interface KjcVisitor
public void visitAssignmentExpression(JAssignmentExpression self, JExpression left, JExpression right)
visitAssignmentExpression
in interface KjcVisitor
public void visitArrayLengthExpression(JArrayLengthExpression self, JExpression prefix)
visitArrayLengthExpression
in interface KjcVisitor
public void visitArrayAccessExpression(JArrayAccessExpression self, JExpression prefix, JExpression accessor)
visitArrayAccessExpression
in interface KjcVisitor
public void visitEmittedTextExpression(JEmittedTextExpression self, Object[] parts)
visitEmittedTextExpression
in interface KjcVisitor
public void visitComments(JavaStyleComment[] comments)
visitComments
in interface KjcVisitor
public void visitComment(JavaStyleComment comment)
visitComment
in interface KjcVisitor
public void visitJavadoc(JavadocComment comment)
visitJavadoc
in interface KjcVisitor
public void visitSwitchLabel(JSwitchLabel self, JExpression expr)
visitSwitchLabel
in interface KjcVisitor
public void visitSwitchGroup(JSwitchGroup self, JSwitchLabel[] labels, JStatement[] stmts)
visitSwitchGroup
in interface KjcVisitor
public void visitCatchClause(JCatchClause self, JFormalParameter exception, JBlock body)
visitCatchClause
in interface KjcVisitor
public void visitBooleanLiteral(boolean value)
visitBooleanLiteral
in interface KjcVisitor
public void visitByteLiteral(byte value)
visitByteLiteral
in interface KjcVisitor
public void visitCharLiteral(char value)
visitCharLiteral
in interface KjcVisitor
public void visitDoubleLiteral(double value)
visitDoubleLiteral
in interface KjcVisitor
public void visitFloatLiteral(float value)
visitFloatLiteral
in interface KjcVisitor
public void visitIntLiteral(int value)
visitIntLiteral
in interface KjcVisitor
public void visitLongLiteral(long value)
visitLongLiteral
in interface KjcVisitor
public void visitShortLiteral(short value)
visitShortLiteral
in interface KjcVisitor
public void visitStringLiteral(String value)
visitStringLiteral
in interface KjcVisitor
public void visitNullLiteral()
visitNullLiteral
in interface KjcVisitor
public void visitPackageName(String name)
visitPackageName
in interface KjcVisitor
public void visitPackageImport(String name)
visitPackageImport
in interface KjcVisitor
public void visitClassImport(String name)
visitClassImport
in interface KjcVisitor
public void visitFormalParameters(JFormalParameter self, boolean isFinal, CType type, String ident)
visitFormalParameters
in interface KjcVisitor
public void visitArgs(JExpression[] args)
public void visitConstructorCall(JConstructorCall self, boolean functorIsThis, JExpression[] params)
visitConstructorCall
in interface KjcVisitor
public void visitArrayInitializer(JArrayInitializer self, JExpression[] elems)
visitArrayInitializer
in interface KjcVisitor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |