Name
Routines — This tag records each routine declared in the source file.
Synopsis
ro#[id] [name]
rloc {Location}
rsig ty#[type]
rlink [link]
rkind [kind]
rvirt [virtual]
rgroup gr#[groupId]
racs [access]
rnspace na#[namespaceId]
rroutine [parentRoutineId]
ralias ro#[aliasId]
rimpl ro#[implementsId]
[rstatic]
[rcrvo]
[rinline]
[rexpl]
rtempl te#[templateId]
[rspecl]
[rarginfo]
[rrec]
[riselem]
rstart {Location}
rcall ro#[calleeId] [virtualCall] {Location}
[...]
rret {Location}
[...]
rstop {Location}
[...]
rbody st#[body]
{Statements}
[...]
rpos {Location} {Location} {Location}
{Location}
Definition
[id] Unique number identifying this routine.
[name] The name given this routine in the source
file.
|
{Location} The location of this
routine in the source file.
|
[type] The id of the tag in the pdb file
that defines the type of this Routine.
|
[link] The kind of link this is either: NA,
INTERNAL, C, C++, FINT, F90.
|
[kind] The kind of Routine this is either:
NA (not defined), ext (external), tproto (template/protoype), fext
(Fortran external), fprog (Fortran program), fbdat (Fortran block
data), fint (Fortran internal), fstfu (Fortran statement function),
fintrin (Fortran intrinsic), fmproc (Fortran module procedure),
funspec (Fortran unspecified).
|
[virtual] Either yes or no.
|
[groupId] The Id. for this routines parent
class.
|
[access] The access level for this
routine.
|
[namespaceId] Id. for the Parent
namespace.
|
[parentRoutineId] Id. for the Parent
routine.
|
[aliasId] Id. for this routines alias
(through interface).
|
[implementsId] Id. for the routine this
routine implements (for Fortran alaised functions.)
|
[rstatic] rstatic if this routine is
static. (Ommit line otherwise)
|
[rcrvo] rcrvo if this routine has a
covarient return virtual override
|
[rinline] rinline if this routine is
inlined, ommit this line otherwise.
|
[rexpl] rexpl if this routine is explicit
ctor ommit otherwise.
|
[templateId] Id for the template, if this
routine implements one, ommit otherwise.
|
[rspecl] rspecl if this routine is
specialized
|
[rarginfo] rarginfo if this routine explicatly
defined interface.
|
[rrec] rrec if this routine is declared
recursive.
|
[riselem] riselem if this routine is
elemental.
|
{Location}
The location of the first executable statement.
|
[calleeId] The Id. that defines the type
of the routine this routine calles.[virtualCall]
Is this call virtual. {Location} The location of this
routine call in this routine.
|
{Location}
Location of the return statements.
|
{Location}
The location of the stop statements.
|
[body] Id. of the first statement in the
body of this Routine.
|
{statements} Each
statement inside the body of this Routine.
|
{Location} {Location} {Location} {Location} Four location tags, in
order, the begining of the Routine declaration, the ending of the Routine
declaration, the begining of the Routine body, and lastly the
ending of the Routine body.
|