6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# File 'lib/twig/token_parser/deprecated.rb', line 6
def parse(token)
stream = parser.stream
expr = parser.parse_expression
node = Node::Deprecated.new(expr, token.lineno)
while stream.test(Token::NAME_TYPE)
k = stream.current.value
stream.next
stream.expect(Token::OPERATOR_TYPE, '=')
case k
when 'package'
node.nodes[:package] = parser.parse_expression
when 'version'
node.nodes[:version] = parser.parse_expression
else
raise Error::Syntax.new(
"Unknown \"#{k}\" option.",
stream.current.lineno,
stream.source_context
)
end
end
stream.expect(Token::BLOCK_END_TYPE)
node
end
|