本文整理汇总了TypeScript中@masala/parser.F.eos方法的典型用法代码示例。如果您正苦于以下问题:TypeScript F.eos方法的具体用法?TypeScript F.eos怎么用?TypeScript F.eos使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类@masala/parser.F
的用法示例。
在下文中一共展示了F.eos方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: combinator
function combinator() {
return C.letters()
.then(C.char(' '))
.then(C.lowerCase().rep())
.then(C.char(' '))
.then(C.notString('romane').rep())
.then(F.eos());
}
示例2:
import {Streams, F, C, N} from '@masala/parser'
import {assertEquals, assertArrayEquals, assertTrue} from '../../assert';
// Parsec needs a stream of characters
const document = '12';
const s = Streams.ofString(document);
// numberLitteral defines any int or float number
// We expect a number, then eos: End Of Stream
// We use drop() because we don't need the value of F.eos, we only want 12
const numberParser = N.numberLiteral().then(F.eos().drop());
const parsing = numberParser.parse(s);
// If the parser reached the end of stream (F.eos) without rejection, parsing is accepted
assertTrue(parsing.isAccepted());
// The parser has a 12 value inside the monoid
assertEquals (12, parsing.value);
示例3:
import {Streams, F, C, N} from '@masala/parser'
import {assertEquals} from '../../assert';
/**
* Created by Nicolas Zozol on 05/11/2017.
*/
const stream = Streams.ofString('abc');
const charsParser = C.char('a')
.then(C.char('b'))
.then(C.char('c'))
.then(F.eos().drop()); // End Of Stream ; droping its value, just checking it's here
let charsParsing = charsParser.parse(stream);
assertEquals('abc', charsParsing.value.join(''), 'Chars parsing');
示例4: combinator
function combinator() {
return expr().then(F.eos().drop());
}