8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/speculations/parser/state/includes.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_include(line)
data.update(state: :candidate, ctxt: :inc)
when match = State.maybe_example(line)
data.update(state: :candidate, ctxt: match[:title])
else
data
end
end
|