Home | History | Annotate | Download | only in regexp

Lines Matching full:machine

21 // Some queue entries are just place holders so that the machine
28 // A thread is the state of a single path through the machine:
36 // A machine holds all the state during an NFA simulation for p.
37 type machine struct {
54 func (m *machine) newInputBytes(b []byte) input {
59 func (m *machine) newInputString(s string) input {
64 func (m *machine) newInputReader(r io.RuneReader) input {
71 // progMachine returns a new machine running the prog p.
72 func progMachine(p *syntax.Prog, op *onePassProg) *machine {
73 m := &machine{p: p, op: op}
88 func (m *machine) init(ncap int) {
97 func (m *machine) alloc(i *syntax.Inst) *thread {
111 func (m *machine) free(t *thread) {
118 // match runs the machine over the input starting at pos.
121 func (m *machine) match(i input, pos int) bool {
192 func (m *machine) clear(q *queue) {
202 // step executes one step of the machine, running each of the threads
207 func (m *machine) step(runq, nextq *queue, pos, nextPos int, c rune, nextCond syntax.EmptyOp) {
267 func (m *machine) add(q *queue, pc uint32, pos int, cap []int, cond syntax.EmptyOp, t *thread) *thread {
321 // onepass runs the machine over the input starting at pos.
324 func (m *machine) onepass(i input, pos int) bool {