SDA SE Wiki

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

User Tools

Site Tools


Command disabled: revisions

typeParamT(#id, #parent, 'name', [#bound_1, ...])

Represents a type parameter of a class or a method.

Arguments

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

#parent: classT, methodT, constructorT
ID of the PEF which contains this type parameter

'name': atom
the name of the type parameter.

[#bound_1,…]: classT, parameterizedTypeT, typeParamT
the list of bounds of this type parameter.

Sample Java Source

public class A <T extends Exception> {
  ...
}

Its PEF Representation

classT(#class, ..., 'A', ...)
typeParamT(#typeParam, #class, 'T', [#bound])
classT(#bound, ..., 'Exception', ...)

AST Specification

ast_node_type_spec( typeParamT,[
     ast_arg(id,     mult(1,1,no ), id,   [typeParamT]),
     ast_arg(parent, mult(1,1,no ), id,   [classT,methodT,constructorT]), 
     ast_arg(name,   mult(1,1,no ), attr, [atomic]), % identifier
     ast_arg(bounds, mult(1,*,ord ),id,   [classT,parameterizedTypeT,typeParamT])      
]).
research/jtransformer/api/java/pefs/4.2/typeparamt.txt · Last modified: 2018/11/16 08:03 by Günter Kniesel

SEWiki, © 2019