Sha256: ac46b1d2e13da99a1799b47b5703c590177758427b8a33549735869c5c96ea3d
Contents?: true
Size: 666 Bytes
Versions: 6
Compression:
Stored size: 666 Bytes
Contents
class Code class Parser class Ternary < Parslet::Parser rule(:defined) { ::Code::Parser::Defined.new } rule(:question_mark) { str("?") } rule(:colon) { str(":") } rule(:space) { str(" ") } rule(:newline) { str("\n") } rule(:whitespace) { (space | newline).repeat(1) } rule(:whitespace?) { whitespace.maybe } rule(:ternary) do ( defined.as(:left) >> whitespace >> question_mark >> whitespace? >> ternary.as(:middle) >> (whitespace? >> colon >> whitespace? >> ternary.as(:right)).maybe ).as(:ternary) | defined end root(:ternary) end end end
Version data entries
6 entries across 6 versions & 2 rubygems