jspurefix
Version:
pure node js fix engine
27 lines (26 loc) • 1.64 kB
TypeScript
import { ContainedComponentField, ContainedField, ContainedGroupField, ContainedSimpleField } from '../../contained';
import { ComponentFieldDefinition, GroupFieldDefinition, SimpleFieldDefinition } from '../../definition';
import { ParseContext } from './parse-context';
import { ISaxNode } from '../../sax-node';
import { ParseProgress } from './parse-progress';
export declare abstract class NodeParser {
protected readonly progress: ParseProgress;
protected readonly parseContexts: ParseContext[];
protected constructor(progress: ParseProgress);
abstract open(line: number, node: ISaxNode): void;
abstract close(line: number, node: string): void;
protected addto(context: ParseContext, containedField: ContainedField): void;
protected fullContextName(): string;
protected addSimple(node: ISaxNode): void;
protected makeContainedSimple(fieldDefinition: SimpleFieldDefinition, context: ParseContext, required: boolean): ContainedSimpleField;
protected makeContainedComponent(fieldDef: ComponentFieldDefinition, context: ParseContext): ContainedComponentField;
protected makeContainedGroup(fieldDef: GroupFieldDefinition, context: ParseContext, required: boolean): ContainedGroupField;
protected addComponentField(componentName: string, node: ISaxNode): void;
protected addComponentDefinition(name: string): void;
protected addGroupField(name: string): void;
private expandName;
protected beginComponentDefinition(node: ISaxNode): void;
protected beginGroupDefinition(node: ISaxNode): void;
protected startContext(context: ParseContext): void;
private peek;
}