Class ALineEndingToken
Unit
parsing
Declaration
type ALineEndingToken = class(AToken)
Description
This class represents the end of a source line. Some parsers may process these tokens out of the source and place them in an intermediate code stream as a way to mark the end of a statement.
Hierarchy
Overview
Fields
Methods
Description
Fields
|
myLineCount: longword; |
Stores the number of line endings represented by the token
|
Methods
|
function init: boolean; override; |
Initializer
|
|
function shallowCopyFrom(const Other: AnObject): boolean; override; |
Construct a shallow copy of the other object.
This method extends the behavior inherited from AnObject.shallowCopyFrom: it calls that method, then checks to see whether Other is an instance of AToken. If so, it copies the value of ALineEndingToken.lineCount from Other to Self , overwriting the value in Self .
Note that this method does NOT copy any sibling or child nodes and so cannot be used to create a full copy of any descendant of ANode. The copy will NOT be automatically placed in the list to which Other belongs, if any, but the caller is free to do so.
|
|
function writeSelfTo(const Dest: AStream): TStreamIOSize; override; |
Write the token, and just the token, to the given stream. This method builds upon the behavior inherited from AToken. It calls the inherited routine, then writes the number of line endings that are represented by the token.
Returns
The total number of bytes written to Dest . |
|
function readFrom(const Source: AStream): TStreamIOSize; override; |
Read the token from the given stream.
This method builds upon the behavior inherited from AToken. It calls the inherited routine, then reads the number of line endings that are represented by the token.
Returns
The total number of bytes read from Source . |
|
function toString: AnsiString; override; |
Construct and return a string representation of the token, suitable for output to a text-based device, such as a console.
This method overrides the behavior inherited from AToken; it simply returns the value defined by letkStringRepresentation.
|
|
function lineCount: longword; virtual; |
Retrieve the number of line endings represented by the token.
This value is usually set when an instance of ALineEndingTokenFromSource has written itself to an intermediate code stream. The value will be at least one (1), but may be more depending upon whether or not multiple line endings in the original source were consolidated into one token.
|
Generated by PasDoc 0.13.0 on 2015-01-10 17:13:18
|