Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 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 | 19x 7x 7x 7x 167x | // @flow import P from 'parsimmon' import crap from './crap' import type { FunctionCallNodeType, NodeType, IdentifierNodeType } from '../types' const FunctionCallParser = P.lazy((): mixed => { const TupleParser = require('./collections/tuple').default const IdentifierParser = require('./identifier').default return P.seq(IdentifierParser, crap, TupleParser.atMost(1)).map( ([left, _, right]: [ IdentifierNodeType, mixed, NodeType ]): FunctionCallNodeType => ({ name: 'functionCall', value: { left, right: right[0] || null } }) ) }) export default FunctionCallParser |