8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/speculations/parser/state/out.rb', line 8
def parse(data)
line = data.line
case
when match = State.context_match(line)
make_new_context(data, match: match)
when match = State.spec_context_line(line)
make_spec_context(data, title: data.line.strip)
when match = State.maybe_example(line)
data.update(state: :candidate, ctxt: match[:title])
when match = State.maybe_include(line)
data.update(state: :candidate, ctxt: :inc)
else
data.update(state: :out)
end
end
|