1.0.25 • Published 10 years ago
happy-parser v1.0.25
Node parser combinator
Immutable monadic parser combinator for node javascript.
Example
const parsec = require('happy-parser');
const sum = (x, y) => x + y,
rest = (x, y) => x - y
const
termOperations = parsec.Parser.operations([ parsec.char('+'), sum ], [ parsec.char('-'), rest ]).trim(),
factorOperations = parsec.Parser.operations([ parsec.char('^'), Math.pow.bind() ]).trim()
const factor = parsec.lazy(() =>
parsec.int.or(expr.between(parsec.char('('), parsec.char(')'))).trim()
),
term = parsec.lazy(() => factor.chainRight(factorOperations)),
expr = term.chain(termOperations).trim()
console.log(expr.parse(' 3^2 + (4 - 7) '))Check also the documentation and tests
1.0.25
10 years ago
1.0.23
10 years ago
1.0.22
10 years ago
1.0.21
10 years ago
1.0.20
10 years ago
1.0.19
10 years ago
1.0.16
10 years ago
1.0.15
10 years ago
1.0.14
10 years ago
1.0.13
10 years ago
1.0.12
10 years ago
1.0.11
10 years ago
1.0.10
10 years ago
1.0.9
10 years ago
1.0.8
10 years ago
1.0.7
10 years ago
1.0.6
10 years ago
1.0.5
10 years ago
1.0.4
10 years ago
1.0.3
10 years ago
1.0.2
10 years ago
1.0.1
10 years ago
1.0.0
10 years ago
