std.regex.internal.parser

Types 2

structCodeGen
Fields
Stack!(uint) fixupStack
NamedGroup[] dict
Stack!(uint) groupStack
uint nesting
uint lookaroundNest
uint counterDepth
CodepointSet[] charsets
const(CharMatcher)[] matchers
uint[] backrefed
uint ngroup
Methods
void start(uint length)
void markBackref(uint n)
bool isOpenGroup(uint n)
void put(Bytecode code)
void putRaw(uint number)
void charsetToIr(CodepointSet set) @trusted
void genGroup()
void genNamedGroup(string name)
void genLookaround(IR opcode)
void endPattern(uint num)
void fixLookaround(uint fix)
void fixRepetition(uint offset)
void fixRepetition(uint offset, uint min, uint max, bool greedy)
void finishAlternation(uint fix)
Tuple!(bool, uint) onClose()
uint popFixup(){
void pushFixup(uint val){
uint topFixup(){ @property
size_t fixupLength(){ @property
uint length(){ @property
structParser(R, Generator) if (isForwardRange!R && is(ElementType!R : dchar))
Fields
dchar front
bool empty
R pat
uint re_flags
Methods
void _popFront()
void skipSpace()
void popFront()
auto save(){
void parseFlags(S)(S flags) @trusted
void parseRegex() @trusted
void parseQuantifier(uint offset) @trusted
void parseAtom()
void parseEscape() @trusted
void error(string msg) @trusted
@property program()
Constructors
this(R pattern, S flags)

Functions 7

fnauto makeRegex(S, CG)(Parser!(S, CG) p)
fnauto makeRegex(S)(S arg) if (isSomeString!S)
fnvoid reverseBytecode()(Bytecode[] code) @trusted
fnvoid postprocess(Char)(ref Regex!Char zis) @trusted
fnvoid fixupBytecode()(Bytecode[] ir)
fnvoid optimize(Char)(ref Regex!Char zis)
fnvoid validateRe(Char)(ref Regex!Char zis) @trusted

Variables 5

enumvarmaxGroupNumber = 2 ^^ 19
enumvarmaxLookaroundDepth = 16
enumvarmaxCompiledLength = 2 ^^ 18
enumvarmaxCumulativeRepetitionLength = 2 ^^ 20
enumvarinfinite = ~ 0u