SE & SDA Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


typeRefT(#id, #parent, #encl, #referencedType)

A typeRefT refers to a class, a basic type or a type parameter. ( History)

Arguments

#id: id
the unique ID assigned to this fact.

#parent: id
the ID of the fact that represents the parent of this fact in the prolog AST.

#encl: methodT, constructorT, classInitializerT, fieldT, classT, annotationMemberT, annotationT
the ID of the fact that represents the enclosing element.

#referencedType: classT, basicTypeT, typeParamT
the ID of the referenced type.

Sample Java Source

String m() {                                                             
    ...
}

Its PEF Representation

methodT(#meth, ..., 'm', [], #typeref, [], ...).   
typeRefT(#typeref, #meth, #meth, #string).
classT(#string, ..., 'String', ...).

AST Specification

ast_node_def('Java',typeRefT,[
     ast_arg(id,      mult(1,1,no ), id, [typeRefT]),
     ast_arg(parent,  mult(1,1,no ), id, [id]), 
     ast_arg(encl,    mult(1,1,no ), id, [methodT, constructorT, classInitializerT,fieldT,classT,annotationMemberT,annotationT]), 
     ast_arg(typeRef, mult(1,1,no ), id, [classT,basicTypeT,typeParamT])
]).

research/jtransformer/api/java/pefs/3.0/typereft.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2018