当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript parsing.attempt函数代码示例

本文整理汇总了TypeScript中@jonggrang/parsing.attempt函数的典型用法代码示例。如果您正苦于以下问题:TypeScript attempt函数的具体用法?TypeScript attempt怎么用?TypeScript attempt使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了attempt函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1:

export const uri: PS.Parser<URI> = PS.co(function* () {
  const us: string = yield PS.attempt(uscheme);
  const [ua, up]: [Maybe<URIAuth>, string] = yield hierPart;
  const uq: string = yield PS.option('', PS.char('?').chain(() => uquery));
  const uf: string = yield PS.option('', PS.char('#').chain(() => ufragment));
  return PS.pure(mkURI(us, ua, up, uq, uf));
});
开发者ID:syaiful6,项目名称:jonggrang,代码行数:7,代码来源:parsing.ts

示例2: digits

const time: PS.Parser<[number, number, number]> = PS.co(function* () {
  let h = yield digits(2, 2);
  yield PS.char(':');
  let m = yield digits(2, 2);
  // the seconds fields is optional
  let s = yield PS.option(0, PS.attempt(PS.char(':').chain(() => digits(2, 2))));

  if (h > 23 || m > 59 || s > 59) {
    return PS.fail('hour, minute and seconds must be in valid range');
  }
  return PS.pure([h, m, s]);
});
开发者ID:syaiful6,项目名称:jonggrang,代码行数:12,代码来源:date.ts

示例3: notMatching

function notMatching(p: PS.Parser<any>): PS.Parser<void> {
  return PS.attempt(p).chain(x => PS.fail('unexpected')).alt(PS.pure(void 0));
}
开发者ID:syaiful6,项目名称:jonggrang,代码行数:3,代码来源:parsing.ts

示例4: notFollowedBy

function notFollowedBy(p: PS.Parser<any>): PS.Parser<void> {
  return PS.attempt(
    PS.attempt(p).chain(a => PS.fail(Object.prototype.toString.call(a)))
      .alt(PS.pure(void 0))
  );
}
开发者ID:syaiful6,项目名称:jonggrang,代码行数:6,代码来源:parsing.ts


注:本文中的@jonggrang/parsing.attempt函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。