pip-requirements-js
Version:
A robust parser for requirements.txt files
136 lines (129 loc) • 10 kB
TypeScript
// AUTOGENERATED FILE
// This file was generated from pep-508.ohm by `ohm generateBundles`.
import {
BaseActionDict,
Grammar,
IterationNode,
Node,
NonterminalNode,
Semantics,
TerminalNode
} from 'ohm-js';
export interface PEP508ActionDict<T> extends BaseActionDict<T> {
File?: (this: NonterminalNode, arg0: NonterminalNode) => T;
Line?: (this: NonterminalNode, arg0: IterationNode, arg1: IterationNode) => T;
Req?: (this: NonterminalNode, arg0: NonterminalNode) => T;
NameReq?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode, arg2: NonterminalNode, arg3: IterationNode) => T;
UrlReq?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode, arg2: NonterminalNode, arg3: IterationNode, arg4: IterationNode) => T;
Extras?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: TerminalNode) => T;
Name?: (this: NonterminalNode, arg0: NonterminalNode) => T;
identifier?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode) => T;
identifierEnd_single?: (this: NonterminalNode, arg0: NonterminalNode) => T;
identifierEnd_multi?: (this: NonterminalNode, arg0: IterationNode, arg1: NonterminalNode) => T;
identifierEnd?: (this: NonterminalNode, arg0: NonterminalNode) => T;
RequirementsReq?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
ConstraintsReq?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
filePath?: (this: NonterminalNode, arg0: IterationNode) => T;
UrlSpec?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
uriReference?: (this: NonterminalNode, arg0: NonterminalNode) => T;
uri?: (this: NonterminalNode, arg0: NonterminalNode, arg1: TerminalNode, arg2: IterationNode, arg3: IterationNode, arg4: IterationNode, arg5: IterationNode, arg6: IterationNode) => T;
hierPart_abempty?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: NonterminalNode) => T;
hierPart_absolute?: (this: NonterminalNode, arg0: NonterminalNode) => T;
hierPart_rootless?: (this: NonterminalNode, arg0: NonterminalNode) => T;
hierPart?: (this: NonterminalNode, arg0: NonterminalNode) => T;
absoluteUri?: (this: NonterminalNode, arg0: NonterminalNode, arg1: TerminalNode, arg2: IterationNode, arg3: IterationNode, arg4: IterationNode) => T;
relativeRef?: (this: NonterminalNode, arg0: IterationNode, arg1: IterationNode, arg2: IterationNode, arg3: IterationNode, arg4: IterationNode) => T;
relativePart_abempty?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: NonterminalNode) => T;
relativePart_absolute?: (this: NonterminalNode, arg0: NonterminalNode) => T;
relativePart_noscheme?: (this: NonterminalNode, arg0: NonterminalNode) => T;
relativePart?: (this: NonterminalNode, arg0: NonterminalNode) => T;
scheme?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode) => T;
authority?: (this: NonterminalNode, arg0: IterationNode, arg1: IterationNode, arg2: NonterminalNode, arg3: IterationNode, arg4: IterationNode) => T;
userinfo?: (this: NonterminalNode, arg0: IterationNode) => T;
host?: (this: NonterminalNode, arg0: NonterminalNode) => T;
port?: (this: NonterminalNode, arg0: IterationNode) => T;
ipLiteral?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: TerminalNode) => T;
ipvFuture?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: TerminalNode, arg3: IterationNode) => T;
ipv6Address?: (this: NonterminalNode, arg0: IterationNode) => T;
ipv4Address?: (this: NonterminalNode, arg0: NonterminalNode, arg1: TerminalNode, arg2: NonterminalNode, arg3: TerminalNode, arg4: NonterminalNode, arg5: TerminalNode, arg6: NonterminalNode) => T;
nz?: (this: NonterminalNode, arg0: NonterminalNode) => T;
decOctet_zeroToNine?: (this: NonterminalNode, arg0: NonterminalNode) => T;
decOctet_tenToNinetyNine?: (this: NonterminalNode, arg0: NonterminalNode, arg1: NonterminalNode) => T;
decOctet_oneHundredToOneNinetyNine?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: NonterminalNode) => T;
decOctet_twoHundredToTwoFortyNine?: (this: NonterminalNode, arg0: TerminalNode, arg1: TerminalNode, arg2: NonterminalNode) => T;
decOctet_twoFiftyToTwoFiftyFive?: (this: NonterminalNode, arg0: TerminalNode, arg1: TerminalNode) => T;
decOctet?: (this: NonterminalNode, arg0: NonterminalNode) => T;
regName?: (this: NonterminalNode, arg0: IterationNode) => T;
path?: (this: NonterminalNode, arg0: NonterminalNode) => T;
pathAbempty?: (this: NonterminalNode, arg0: IterationNode, arg1: IterationNode) => T;
pathAbsolute?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: IterationNode, arg3: IterationNode) => T;
pathNoscheme?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode, arg2: IterationNode) => T;
pathRootless?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode, arg2: IterationNode) => T;
segment?: (this: NonterminalNode, arg0: IterationNode) => T;
segmentNz?: (this: NonterminalNode, arg0: IterationNode) => T;
segmentNzNc?: (this: NonterminalNode, arg0: IterationNode) => T;
pchar?: (this: NonterminalNode, arg0: NonterminalNode | TerminalNode) => T;
query?: (this: NonterminalNode, arg0: IterationNode) => T;
fragment?: (this: NonterminalNode, arg0: IterationNode) => T;
pctEncoded?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
unreserved?: (this: NonterminalNode, arg0: NonterminalNode | TerminalNode) => T;
reserved?: (this: NonterminalNode, arg0: NonterminalNode) => T;
genDelims?: (this: NonterminalNode, arg0: TerminalNode) => T;
subDelims?: (this: NonterminalNode, arg0: TerminalNode) => T;
hexdig?: (this: NonterminalNode, arg0: NonterminalNode | TerminalNode) => T;
QuotedMarker?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
Marker?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerOr_node?: (this: NonterminalNode, arg0: NonterminalNode, arg1: TerminalNode, arg2: NonterminalNode) => T;
MarkerOr_leaf?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerOr?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerAnd_node?: (this: NonterminalNode, arg0: NonterminalNode, arg1: TerminalNode, arg2: NonterminalNode) => T;
MarkerAnd_leaf?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerAnd?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerExpr_leaf?: (this: NonterminalNode, arg0: NonterminalNode, arg1: NonterminalNode, arg2: NonterminalNode) => T;
MarkerExpr_node?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: TerminalNode) => T;
MarkerExpr?: (this: NonterminalNode, arg0: NonterminalNode) => T;
MarkerVar?: (this: NonterminalNode, arg0: NonterminalNode) => T;
markerOp_versionCmp?: (this: NonterminalNode, arg0: NonterminalNode) => T;
markerOp_in?: (this: NonterminalNode, arg0: TerminalNode) => T;
markerOp_notIn?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: TerminalNode) => T;
markerOp?: (this: NonterminalNode, arg0: NonterminalNode) => T;
pythonStr?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: TerminalNode) => T;
pythonStrChar?: (this: NonterminalNode, arg0: NonterminalNode | TerminalNode) => T;
envVar?: (this: NonterminalNode, arg0: TerminalNode) => T;
VersionSpec_parenthesized?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode, arg2: TerminalNode) => T;
VersionSpec_direct?: (this: NonterminalNode, arg0: NonterminalNode) => T;
VersionSpec?: (this: NonterminalNode, arg0: NonterminalNode) => T;
VersionMany?: (this: NonterminalNode, arg0: NonterminalNode) => T;
VersionOne?: (this: NonterminalNode, arg0: NonterminalNode, arg1: NonterminalNode) => T;
versionCmp?: (this: NonterminalNode, arg0: TerminalNode) => T;
version?: (this: NonterminalNode, arg0: IterationNode) => T;
comment?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode) => T;
space?: (this: NonterminalNode, arg0: TerminalNode) => T;
LooseFile?: (this: NonterminalNode, arg0: NonterminalNode) => T;
LooseLine?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode) => T;
LooseReq?: (this: NonterminalNode, arg0: NonterminalNode) => T;
LooseNameReq?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode, arg2: NonterminalNode, arg3: IterationNode) => T;
LooseNonNameReq?: (this: NonterminalNode, arg0: NonterminalNode) => T;
LooseExtras?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: IterationNode) => T;
LooseQuotedMarker?: (this: NonterminalNode, arg0: TerminalNode, arg1: NonterminalNode) => T;
LooseVersionSpec_parenthesized?: (this: NonterminalNode, arg0: TerminalNode, arg1: IterationNode, arg2: IterationNode) => T;
LooseVersionSpec_direct?: (this: NonterminalNode, arg0: NonterminalNode) => T;
LooseVersionSpec?: (this: NonterminalNode, arg0: NonterminalNode) => T;
LooseVersionMany?: (this: NonterminalNode, arg0: NonterminalNode, arg1: IterationNode) => T;
LooseVersionOne?: (this: NonterminalNode, arg0: IterationNode, arg1: IterationNode) => T;
looseVersionCmp?: (this: NonterminalNode, arg0: IterationNode) => T;
looseVersion?: (this: NonterminalNode, arg0: IterationNode) => T;
looseAnything?: (this: NonterminalNode, arg0: IterationNode) => T;
}
export interface PEP508Semantics extends Semantics {
addOperation<T>(name: string, actionDict: PEP508ActionDict<T>): this;
extendOperation<T>(name: string, actionDict: PEP508ActionDict<T>): this;
addAttribute<T>(name: string, actionDict: PEP508ActionDict<T>): this;
extendAttribute<T>(name: string, actionDict: PEP508ActionDict<T>): this;
}
export interface PEP508Grammar extends Grammar {
createSemantics(): PEP508Semantics;
extendSemantics(superSemantics: PEP508Semantics): PEP508Semantics;
}
declare const grammar: PEP508Grammar;
export default grammar;