Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering
@deprecated
with JT 2.8.0 see fieldT for current representation
represents the field declaration.
#id:
the unique ID assigned to this fact.
#class: classDefT
ID of the enclosing/declaring class.
TYPE:
is a valid typeterm.
'name':
the name of the variable.
#init: expression, null
ID of the initializer of this variable declaration.
class HelloWorld extends HelloUniverse { //classDefT static String message; //corresponding code line to fieldDefT }
classDefT(#class, 'null', 'HelloWorld', [fqn('HelloWorld', '<init>', []), #id, ...]). fieldDefT(#id, #class, type(class, ..., 0), 'message', 'null').
ast_node_def('Java',fieldDefT,[ ast_arg(id, mult(1,1,no ), id, [fieldDefT]), % <-- convention!!! ast_arg(parent, mult(1,1,no ), id, [classDefT]), ast_arg(type, mult(1,1,no ), attr,[typeTermType]), % <-- dieser typ ist noch undefined ast_arg(name, mult(1,1,no ), attr,[atom]), ast_arg(expr, mult(0,1,no ), id, [expressionType,nullType]) % The following pseudo-components are now in ast_relation(Java, Reltype, Defs): % ast_arg(hasModif,mult(0,*,no ), attr,[atom]) ]).