Symbol Record

The Symbol record describes a symbol declaration. It specifies the location and type of a symbol. It is used to uniquely describe a symbol in a project, or in an open file buffer.

Symbol records are returned by several functions, and Symbol records are used as input to several functions. The Symbol record has the following fields:

Field

Description

Symbol

The full symbol name. A symbol name is actually a path. Every symbol name is divided into path components, which are separated by dot (.) characters. For example, a symbol name might be “myclass.member1”. In this example, “member1” is contained by “myclass”.

Type

The symbol’s type (e.g. “Function”, “Class”, etc.)

Project

The full path of the project where the symbol was found

File

The full path of the file where the symbol was found

lnFirst

The first line number of the symbol declaration

lnLim

The limit line number of the symbol declaration

lnName

The line number where the symbol’s name appears in the declaration.

ichName

The character index of the symbol’s name in the declaration at the line lnName.

Instance

The instance number path of the symbol within File. For example, the first occurrence of a symbol is instance 0, the second is instance 1, and so on.