SDA SE Wiki

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

User Tools

Site Tools


@deprecated since JT 2.8.0 see paramT for current representation



paramDefT(#id, #parent, TYPE, 'name')

represents the program element (method, catch clause, foreach loop) parametrized by this parameter declaration.

Arguments

#id:
the unique ID assigned to this fact.

#parent: ( methodDefT , catchT , foreachT )
ID of the enclosing PEF

TYPE:
is a valid typeTermType.

'name':
the name of the parameter.

Sample Java Source

class HelloWorld  { 
  public static void main(String[] args){   //String [] args is the corresponding code part to paramDefT
    ...
  }
}

Its PEF Representation

paramDefT(#id, #parent, type(class, ..., 1), 'args').
methodDefT(#parent, ..., 'main', [#id], type(basic, void, 0), [], ...).

AST Specification

ast_node_def('Java',paramDefT,[
     ast_arg(id,      mult(1,1,no ),  id,  [paramDefT]), % <-- convention!!!
     ast_arg(parent,  mult(1,1,no ),  id,  [methodDefT,catchT,foreachT]), 
     ast_arg(type,    mult(1,1,no ),  attr,[typeTermType]), 
     ast_arg(name,    mult(1,1,no ),  attr,[atom])
% The following pseudo-components are now in ast_relation(Java, Reltype, Defs):  
%     ast_arg(hasModif,mult(0,*,no ),  attr,[atom])     
]).
research/jtransformer/api/java/pefs/old/paramdeft.txt · Last modified: 2018/05/09 01:59 (external edit)

SEWiki, © 2025