@vlocode/apex
Version:
Salesforce APEX Parser and Grammar
60 lines • 2.05 kB
TypeScript
/// <reference types="node" />
import { CharStream, Interval } from 'antlr4ng';
/**
* Implementation of the {@link CharStream} interface that uses a {@link Buffer} as the underlying data source.
*/
export declare class BufferStream implements CharStream {
#private;
private data;
readonly name: string;
readonly size: number;
get index(): number;
constructor(data: Buffer, name?: string);
getSourceName(): string;
/**
* Reset the stream so that it's in the same state it was
* when the object was created *except* the data array is not
* touched.
*/
reset(): void;
consume(): void;
LA(offset: number): number;
LT(offset: number): number;
mark(): number;
release(): void;
/**
* consume() ahead until p==index; can't just set p=index as we must
* update line and column. If we seek backwards, just set p
*/
seek(index: number): void;
getTextFromRange(start: number, stop: number): string;
getTextFromInterval(interval: Interval): string;
getText(interval: number | Interval, stop?: number): string;
toString(): string;
}
/**
* Case insensitive Decorator for a `CharStream` implementation, this will make the `LA` method return the lower case
* character code for any character that is not `Token.EOF`.
*/
export declare class CaseInsensitiveCharStream implements CharStream {
private stream;
get index(): number;
get size(): number;
/**
* Implementation of the `CharStream` interface that is case insensitive.
* @param input Original input stream to decorate as case insensitive
*/
constructor(stream: CharStream);
LA(offset: number): number;
private toLower;
getTextFromRange(start: number, stop: number): string;
getTextFromInterval(interval: Interval): string;
reset(): void;
consume(): void;
mark(): number;
release(marker: number): void;
seek(index: number): void;
toString(): string;
getSourceName(): string;
}
//# sourceMappingURL=streams.d.ts.map