UNPKG

parser-combinator

Version:
112 lines (58 loc) 56.6 kB
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.masala = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _option=require("./option"),_option2=_interopRequireDefault(_option),_try=require("./try"),_try2=_interopRequireDefault(_try),_unit=require("./unit"),_unit2=_interopRequireDefault(_unit);exports.default={option:_option2.default,atry:_try2.default,unit:_unit2.default}; },{"./option":3,"./try":4,"./unit":5}],2:[function(require,module,exports){ "use strict";function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,n){for(var t=0;t<n.length;t++){var a=n[t];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}return function(n,t,a){return t&&e(n.prototype,t),a&&e(n,a),n}}();exports.default=function(){return new List(1===arguments.length&&Array.isArray(arguments[0])?arguments[0]:Array.prototype.slice.call(arguments))};var List=function(){function e(n){_classCallCheck(this,e),this.value=n}return _createClass(e,[{key:"size",value:function(){return this.value.length}},{key:"isEmpty",value:function(){return 0===this.value.length}},{key:"add",value:function(n){return new e(this.value.concat([n]))}},{key:"append",value:function(n){return new e(this.value.concat(n.value))}},{key:"filter",value:function(n){for(var t=[],a=0;a<this.value.length;a++)n(this.value[a])&&t.push(this.value[a]);return new e(t)}},{key:"map",value:function(n){return new e(this.value.map(n))}},{key:"flatmap",value:function(n){var t=new e([]);return this.value.forEach(function(e){t=t.append(n(e))}),t}},{key:"array",value:function(){return this.value.slice()}},{key:"join",value:function(e){return this.value.join(e)}}]),e}(); },{}],3:[function(require,module,exports){ "use strict";function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function someOrNone(e){return new Option(e)}function none(){return new Option}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(n,t,r){return t&&e(n.prototype,t),r&&e(n,r),n}}(),Option=function(){function e(n){_classCallCheck(this,e),this.value=n}return _createClass(e,[{key:"isPresent",value:function(){return null!==this.value&&void 0!==this.value}},{key:"map",value:function(e){return this.isPresent()?someOrNone(e(this.value)):this}},{key:"flatmap",value:function(e){return this.isPresent()?e(this.value):this}},{key:"filter",value:function(n){return this.isPresent()&&n(this.value)?this:new e}},{key:"get",value:function(){return this.value}},{key:"orElse",value:function(e){return this.isPresent()?this.value:e}},{key:"orLazyElse",value:function(e){return this.isPresent()?this.value:e()}}]),e}();exports.default={some:someOrNone,none:none}; },{}],4:[function(require,module,exports){ "use strict";function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function success(e){return new Try(e,null)}function failure(e){return new Try(null,e)}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var u=r[t];u.enumerable=u.enumerable||!1,u.configurable=!0,"value"in u&&(u.writable=!0),Object.defineProperty(e,u.key,u)}}return function(r,t,u){return t&&e(r.prototype,t),u&&e(r,u),r}}(),Try=function(){function e(r,t){_classCallCheck(this,e),this.value=r,this.error=t}return _createClass(e,[{key:"isSuccess",value:function(){return null===this.error}},{key:"isFailure",value:function(){return!this.isSuccess()}},{key:"onSuccess",value:function(e){return this.isSuccess()&&e(this.value),this}},{key:"onFailure",value:function(e){return this.isFailure()&&e(this.error),this}},{key:"map",value:function(e){if(!this.isSuccess())return this;try{return success(e(this.value))}catch(e){return failure(e)}}},{key:"flatmap",value:function(e){if(!this.isSuccess())return this;try{return e(this.value)}catch(e){return failure(e)}}},{key:"success",value:function(){return this.value}},{key:"failure",value:function(){return this.error}},{key:"recoverWith",value:function(e){return this.isSuccess()?this.value:e}},{key:"lazyRecoverWith",value:function(e){return this.isSuccess()?this.value:e(this.error)}},{key:"filter",value:function(e){return this.isSuccess()?e(this.value)?this:failure(new Error("invalid filter")):this}}]),e}();exports.default={success:success,failure:failure}; },{}],5:[function(require,module,exports){ "use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var Unit=function e(){_classCallCheck(this,e)};exports.default=new Unit; },{}],6:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}function GenlexFactory(e,r,n,t,u){this.keyword=e,this.ident=r,this.number=n,this.string=t,this.char=u}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,r){for(var n=0;n<r.length;n++){var t=r[n];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}return function(r,n,t){return n&&e(r.prototype,n),t&&e(r,t),r}}(),_flowBundle=require("../parsec/flow-bundle"),_flowBundle2=_interopRequireDefault(_flowBundle),_charsBundle=require("../../lib/parsec/chars-bundle"),_charsBundle2=_interopRequireDefault(_charsBundle),_numbersBundle=require("../../lib/parsec/numbers-bundle"),_numbersBundle2=_interopRequireDefault(_numbersBundle),_unit=require("../data/unit.js"),_unit2=_interopRequireDefault(_unit),Genlex=function(){function e(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];_classCallCheck(this,e);var n=_charsBundle2.default.letter.or(_charsBundle2.default.char("_")).or(_numbersBundle2.default.digit);this.identParser=_charsBundle2.default.letter.then(n.optrep()).map(function(e){return[e[0]].concat(e[1].array()).join("")}),this.keywordParser=r.reduce(function(e,r){return _charsBundle2.default.string(r).or(e)},_flowBundle2.default.error)}return _createClass(e,[{key:"space",value:function(){return _charsBundle2.default.charIn(" \r\n\f\t")}},{key:"spaces",value:function(){return this.space().optrep().map(function(){return _unit2.default})}},{key:"keyword",value:function(e){return this.keywordParser.map(e.keyword)}},{key:"ident",value:function(e){return this.identParser.map(e.ident)}},{key:"number",value:function(e){return _numbersBundle2.default.numberLiteral.map(e.number)}},{key:"string",value:function(e){return _charsBundle2.default.stringLiteral.map(e.string)}},{key:"char",value:function(e){return _charsBundle2.default.charLiteral.map(e.char)}},{key:"token",value:function(e){return this.keyword(e).or(this.ident(e)).or(this.number(e)).or(this.string(e)).or(this.char(e))}},{key:"tokenBetweenSpaces",value:function(e){return this.spaces().thenRight(this.token(e)).thenLeft(this.spaces())}},{key:"tokens",value:function(e){return this.tokenBetweenSpaces(e).optrep().thenLeft(_flowBundle2.default.eos).map(function(e){return e.array()})}}]),e}();exports.default={factory:function(e,r,n,t,u){return new GenlexFactory(e,r,n,t,u)},generator:function(e){return new Genlex(e)}}; },{"../../lib/parsec/chars-bundle":11,"../../lib/parsec/numbers-bundle":14,"../data/unit.js":5,"../parsec/flow-bundle":12}],7:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _genlex=require("./genlex"),_genlex2=_interopRequireDefault(_genlex),_token=require("./token"),_token2=_interopRequireDefault(_token),_tokenizer=require("./tokenizer"),_tokenizer2=_interopRequireDefault(_tokenizer);exports.default={genlex:_genlex2.default,token:_token2.default,tokenizer:_tokenizer2.default}; },{"./genlex":6,"./token":8,"./tokenizer":9}],8:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function literal(e){return _flowBundle2.default.parse(function(t,n){return t.get(n).map(function(r){return e(r).map(function(e){return _response2.default.accept(e,t,n+1,!0)}).orLazyElse(function(){return _response2.default.reject(t.location(n),!1)})}).lazyRecoverWith(function(){return _response2.default.reject(t.location(n),!1)})})}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),_response=require("../parsec/response"),_response2=_interopRequireDefault(_response),_option=require("../data/option"),_option2=_interopRequireDefault(_option),_flowBundle=require("../parsec/flow-bundle"),_flowBundle2=_interopRequireDefault(_flowBundle),Token=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"keyword",value:function(){return _option2.default.none()}},{key:"ident",value:function(){return _option2.default.none()}},{key:"number",value:function(){return _option2.default.none()}},{key:"string",value:function(){return _option2.default.none()}},{key:"char",value:function(){return _option2.default.none()}}]),e}(),TKKeyword=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.value=e,n}return _inherits(t,e),_createClass(t,[{key:"keyword",value:function(){return _option2.default.some(this.value)}}]),t}(Token),TKIdent=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.value=e,n}return _inherits(t,e),_createClass(t,[{key:"ident",value:function(){return _option2.default.some(this.value)}}]),t}(Token),TKNumber=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.value=e,n}return _inherits(t,e),_createClass(t,[{key:"number",value:function(){return _option2.default.some(this.value)}}]),t}(Token),TKString=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.value=e,n}return _inherits(t,e),_createClass(t,[{key:"string",value:function(){return _option2.default.some(this.value)}}]),t}(Token),TKChar=function(e){function t(e){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.value=e,n}return _inherits(t,e),_createClass(t,[{key:"char",value:function(){return _option2.default.some(this.value)}}]),t}(Token),token={builder:{keyword:function(e){return new TKKeyword(e)},ident:function(e){return new TKIdent(e)},number:function(e){return new TKNumber(e)},string:function(e){return new TKString(e)},char:function(e){return new TKChar(e)}},parser:{keyword:literal(function(e){return e.keyword()}),ident:literal(function(e){return e.ident()}),number:literal(function(e){return e.number()}),string:literal(function(e){return e.string()}),char:literal(function(e){return e.char()})}};exports.default=token; },{"../data/option":3,"../parsec/flow-bundle":12,"../parsec/response":16}],9:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,n){for(var r=0;r<n.length;r++){var t=n[r];t.enumerable=t.enumerable||!1,t.configurable=!0,"value"in t&&(t.writable=!0),Object.defineProperty(e,t.key,t)}}return function(n,r,t){return r&&e(n.prototype,r),t&&e(n,t),n}}();exports.default=function(e){return new Tokenizer(e)};var _genlex=require("./genlex"),_genlex2=_interopRequireDefault(_genlex),_token=require("./token"),_token2=_interopRequireDefault(_token),Tokenizer=function(){function e(n){_classCallCheck(this,e),this.parser=_genlex2.default.generator(n).tokens(_token2.default.builder)}return _createClass(e,[{key:"tokenize",value:function(e){return this.parser.parse(e,0).toTry()}}]),e}(); },{"./genlex":6,"./token":8}],10:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.T=exports.X=exports.MD=exports.JSON=exports.N=exports.C=exports.F=exports.parser=exports.stream=exports.standard=exports.parsec=exports.genlex=exports.data=void 0;var _index=require("./data/index"),_index2=_interopRequireDefault(_index),_index3=require("./genlex/index"),_index4=_interopRequireDefault(_index3),_index5=require("./parsec/index"),_index6=_interopRequireDefault(_index5),_parser=require("./parsec/parser"),_parser2=_interopRequireDefault(_parser),_index7=require("./standard/index"),_index8=_interopRequireDefault(_index7),_index9=require("./stream/index"),_index10=_interopRequireDefault(_index9),JSON=_index8.default.jsonParser,MD=_index8.default.markdownBundle,X=_index8.default.extractorBundle,T=_index8.default.tokenBundle;exports.data=_index2.default,exports.genlex=_index4.default,exports.parsec=_index6.default,exports.standard=_index8.default,exports.stream=_index10.default,exports.parser=_parser2.default,exports.F=_index5.F,exports.C=_index5.C,exports.N=_index5.N,exports.JSON=JSON,exports.MD=MD,exports.X=X,exports.T=T; },{"./data/index":1,"./genlex/index":7,"./parsec/index":13,"./parsec/parser":15,"./standard/index":18,"./stream/index":30}],11:[function(require,module,exports){ "use strict";function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function letter(){return _flowBundle2.default.satisfy(function(t){return"a"<=t&&t<="z"||"A"<=t&&t<="Z"})}function isUtf8Letter(t){var r=t.toUpperCase();return r.toLowerCase()!=r}function utf8Letter(){return _flowBundle2.default.satisfy(function(t){return isUtf8Letter(t)})}function letters(){return letter().rep().map(function(t){return t.join("")})}function char(t){if(1!==t.length)throw new Error("Char parser must contains one character");return _flowBundle2.default.satisfy(function(r){return t===r})}function notChar(t){if(1!==t.length)throw new Error("Char parser must contains one character");return _flowBundle2.default.satisfy(function(r){return t!==r})}function charIn(t){return _flowBundle2.default.satisfy(function(r){return-1!==t.indexOf(r)})}function charNotIn(t){return _flowBundle2.default.satisfy(function(r){return-1===t.indexOf(r)})}function subString(t){return _flowBundle2.default.subStream(t).map(function(t){return t.join("")})}function string(t){return new _parser2.default(function(r){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return r.subStreamAt(t.split(""),e)?_response2.default.accept(t,r,e+t.length,!0):_response2.default.reject(r.location(e),!1)})}function notString(t){return _flowBundle2.default.not(string(t))}function stringLiteral(){var t=string('\\"').or(notChar('"'));return char('"').thenRight(t.optrep()).thenLeft(char('"')).map(function(t){return t.join("")})}function charLiteral(){var t=string("\\'").or(notChar("'"));return char("'").thenRight(t).thenLeft(char("'"))}function lowerCase(){return _flowBundle2.default.satisfy(function(t){return"a"<=t&&t<="z"})}function upperCase(){return _flowBundle2.default.satisfy(function(t){return"A"<=t&&t<="Z"})}Object.defineProperty(exports,"__esModule",{value:!0});var _flowBundle=require("./flow-bundle"),_flowBundle2=_interopRequireDefault(_flowBundle),_parser=require("./parser"),_parser2=_interopRequireDefault(_parser),_response=require("./response"),_response2=_interopRequireDefault(_response);exports.default={utf8Letter:utf8Letter(),letter:letter(),letters:letters(),notChar:notChar,char:char,charIn:charIn,charNotIn:charNotIn,subString:subString,string:string,notString:notString,charLiteral:charLiteral(),stringLiteral:stringLiteral(),lowerCase:lowerCase(),upperCase:upperCase()}; },{"./flow-bundle":12,"./parser":15,"./response":16}],12:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function parse(e){return new _parser2.default(e)}function lazy(e,r){return new _parser2.default(function(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.apply(e.prototype,r).parse(n,t)})}function returns(e){return new _parser2.default(function(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return _response2.default.accept(e,r,n,!1)})}function error(){return new _parser2.default(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return _response2.default.reject(e.location(r),!1)})}function eos(){return new _parser2.default(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.endOfStream(r)?_response2.default.accept(_unit2.default,e,r,!1):_response2.default.reject(e.location(r),!1)})}function satisfy(e){return new _parser2.default(function(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return r.get(n).filter(e).map(function(e){return _response2.default.accept(e,r,n+1,!0)}).lazyRecoverWith(function(){return _response2.default.reject(r.location(n),!1)})})}function doTry(e){return new _parser2.default(function(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.parse(r,n).fold(function(e){return e},function(e){return _response2.default.reject(r.location(e.offset),!1)})})}function any(){return satisfy(function(){return!0})}function nop(){return new _parser2.default(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return _response2.default.accept([],e,r,!0)})}function not(e){return doTry(e).then(error()).or(any())}function subStream(e){return any().occurrence(e)}function sequence(){var e=nop();for(var r in arguments)e=e.then(arguments[r]);return e}Object.defineProperty(exports,"__esModule",{value:!0});var _unit=require("../data/unit.js"),_unit2=_interopRequireDefault(_unit),_parser=require("./parser"),_parser2=_interopRequireDefault(_parser),_response=require("./response"),_response2=_interopRequireDefault(_response);exports.default={parse:parse,try:doTry,any:any(),subStream:subStream,not:not,lazy:lazy,returns:returns,error:error(),eos:eos(),satisfy:satisfy,sequence:sequence}; },{"../data/unit.js":5,"./parser":15,"./response":16}],13:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.N=exports.F=exports.C=void 0;var _parser=require("./parser"),_parser2=_interopRequireDefault(_parser),_response=require("./response"),_response2=_interopRequireDefault(_response),_flowBundle=require("./flow-bundle"),_flowBundle2=_interopRequireDefault(_flowBundle),_charsBundle=require("./chars-bundle"),_charsBundle2=_interopRequireDefault(_charsBundle),_numbersBundle=require("./numbers-bundle"),_numbersBundle2=_interopRequireDefault(_numbersBundle),C=exports.C=_charsBundle2.default,F=exports.F=_flowBundle2.default,N=exports.N=_numbersBundle2.default;exports.default={parser:_parser2.default,response:_response2.default}; },{"./chars-bundle":11,"./flow-bundle":12,"./numbers-bundle":14,"./parser":15,"./response":16}],14:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function numberLiteral(){var e=function(e){return e.join("")},n=function(n){return n.map(e).orElse("")},r=digit().rep().map(e),t=_charsBundle2.default.charIn("+-").opt().then(r).map(function(e){return e[0].orElse("")+e[1]});return t.then(_charsBundle2.default.char(".").then(r).opt().map(n)).then(_charsBundle2.default.charIn("eE").then(t).opt().map(n)).map(function(e){return e[0]+e[1]+e[2]}).map(function(e){return parseFloat(e,10)})}function digit(){return _flowBundle2.default.satisfy(function(e){return"0"<=e&&e<="9"})}function digits(){return digit().rep().map(function(e){return e.join("")})}function integer(){var e=function(e){return e.join("")},n=digit().rep().map(e);return _charsBundle2.default.charIn("+-").opt().then(n).map(function(e){return e[0].orElse("")+e[1]}).map(function(e){return parseInt(e,10)})}Object.defineProperty(exports,"__esModule",{value:!0});var _charsBundle=require("./chars-bundle"),_charsBundle2=_interopRequireDefault(_charsBundle),_flowBundle=require("./flow-bundle"),_flowBundle2=_interopRequireDefault(_flowBundle);exports.default={numberLiteral:numberLiteral(),digit:digit(),digits:digits(),integer:integer()}; },{"./chars-bundle":11,"./flow-bundle":12}],15:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,n){if(!(e instanceof n))throw new TypeError("Cannot call a class as a function")}function bindAccepted(e,n){return n(e.value).parse(e.input,e.offset).fold(function(n){return _response2.default.accept(n.value,n.input,n.offset,e.consumed||n.consumed)},function(n){return _response2.default.reject(e.input.location(n.offset),e.consumed||n.consumed)})}function bind(e,n){return new Parser(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.parse(t,r).fold(function(e){return bindAccepted(e,n)},function(e){return e})})}function choice(e,n){return new Parser(function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.parse(t,r).fold(function(e){return e},function(e){return e.consumed?e:n.parse(t,r)})})}function repeatable(e,n,t){return new Parser(function(r){for(var u=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=!1,o=(0,_list2.default)(),a=u,f=e.parse(r,u),c=0;f.isAccepted()&&n(c);)c+=1,o=o.append((0,_list2.default)(f.value)),i=i||f.consumed,a=f.offset,f=e.parse(r,f.offset);return t(c)?_response2.default.accept(o,r,a,i):_response2.default.reject(a,i)})}function returns(e){return new Parser(function(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return _response2.default.accept(e,n,t,!1)})}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,n){for(var t=0;t<n.length;t++){var r=n[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(n,t,r){return t&&e(n.prototype,t),r&&e(n,r),n}}(),_index=require("../stream/index"),_index2=_interopRequireDefault(_index),_option=require("../data/option"),_option2=_interopRequireDefault(_option),_list=require("../data/list"),_list2=_interopRequireDefault(_list),_response=require("./response"),_response2=_interopRequireDefault(_response),Parser=function(){function e(n){_classCallCheck(this,e),this.parse=n}return _createClass(e,[{key:"flatmap",value:function(e){return bind(this,e)}},{key:"map",value:function(n){var t=this;return new e(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t.parse(e,r).map(n)})}},{key:"filter",value:function(n){var t=this;return new e(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t.parse(e,r).filter(n)})}},{key:"match",value:function(e){return this.filter(function(n){return n===e})}},{key:"then",value:function(e){return this.flatmap(function(n){return e.map(function(e){var t=(0,_list2.default)(n).append((0,_list2.default)(e)).array();return 1==t.length?t[0]:t})})}},{key:"concat",value:function(e){return this.then(e)}},{key:"drop",value:function(){return this.map(function(e){return[]})}},{key:"thenLeft",value:function(e){return this.then(e.drop())}},{key:"thenRight",value:function(e){return this.drop().then(e)}},{key:"thenReturns",value:function(e){return this.thenRight(returns(e))}},{key:"or",value:function(e){return choice(this,e)}},{key:"opt",value:function(){return this.map(_option2.default.some).or(returns(_option2.default.none()))}},{key:"rep",value:function(){return repeatable(this,function(){return!0},function(e){return 0!==e})}},{key:"occurrence",value:function(e){return repeatable(this,function(n){return n<e},function(n){return n===e})}},{key:"optrep",value:function(){return repeatable(this,function(){return!0},function(){return!0})}},{key:"chain",value:function(n){var t=this;return new e(function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return n.parse(_index2.default.buffered(_index2.default.ofParser(t,e)),r)})}},{key:"debug",value:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],t=function(t){return n?console.log("[debug] : ",e,t):console.log("[debug] : ",e),t};return this.map(t)}}]),e}();exports.default=Parser; },{"../data/list":2,"../data/option":3,"../stream/index":30,"./response":16}],16:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),_try=require("../data/try.js"),_try2=_interopRequireDefault(_try),Response=function(){function e(){_classCallCheck(this,e)}return _createClass(e,[{key:"isAccepted",value:function(){return this.fold(function(){return!0},function(){return!1})}},{key:"toTry",value:function(){return this.fold(function(e){return _try2.default.success(e.value)},function(e){return _try2.default.failure(new Error("parser error at "+e.offset))})}}]),e}(),Reject=function(e){function t(e,r){_classCallCheck(this,t);var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return n.offset=e,n.consumed=r,n}return _inherits(t,e),_createClass(t,[{key:"fold",value:function(e,t){return t(this)}},{key:"map",value:function(){return this}},{key:"flatmap",value:function(){return this}},{key:"filter",value:function(){return new t(this.offset,!1)}}]),t}(Response),Accept=function(e){function t(e,r,n,o){_classCallCheck(this,t);var u=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return u.offset=n,u.consumed=o,u.value=e,u.input=r,u}return _inherits(t,e),_createClass(t,[{key:"fold",value:function(e){return e(this)}},{key:"map",value:function(e){return new t(e(this.value),this.input,this.offset,this.consumed)}},{key:"flatmap",value:function(e){return e(this.value)}},{key:"filter",value:function(e){return e(this.value)?this:new Reject(this.offset,!1)}}]),t}(Response),accept=function(e,t,r,n){return new Accept(e,t,r,n)},reject=function(e,t){return new Reject(e,t)},response={accept:accept,reject:reject};exports.default=response; },{"../data/try.js":4}],17:[function(require,module,exports){ "use strict";function _interopRequireDefault(r){return r&&r.__esModule?r:{default:r}}function _classCallCheck(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}function _last(r){return r[r.length-1]}function _first(r){return r[0]}function satisfyStringFast(r){return new _parser2.default(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if("string"!=typeof e.source)throw"Input source must be a String";var n=e.source.indexOf(r,t);return n>0?_response2.default.accept(e.source.substring(t,n),e,n,!0):_response2.default.reject(e.location(t),!1)})}function satisfyArrayStringFast(r){return new _parser2.default(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if("string"!=typeof e.source)throw"Input source must be a String";for(var n=-1,o=0;n<0&&o<r.length;){var i=r[o];if(n=e.source.indexOf(i,t),o++,n>0)break}return n>0?_response2.default.accept(e.source.substring(t,n),e,n,!0):_response2.default.reject(e.location(t),!1)})}Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(r){return typeof r}:function(r){return r&&"function"==typeof Symbol&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},_createClass=function(){function r(r,e){for(var t=0;t<e.length;t++){var n=e[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(r,n.key,n)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}(),_index=require("../../index"),_response=require("./../../parsec/response"),_response2=_interopRequireDefault(_response),_parser=require("./../../parsec/parser"),_parser2=_interopRequireDefault(_parser),ExtractorBundle=function(){function r(e){_classCallCheck(this,r),this.options={spacesCharacters:" \t\n",wordSeparators:_index.C.charIn(" \n:-,;"),letter:_index.C.letter,moreSeparators:null},Object.assign(this.options,this._handleOptions(e)),this.last=_last,this.first=_first}return _createClass(r,[{key:"_handleOptions",value:function(r){return r&&"object"===(void 0===r?"undefined":_typeof(r))?(r.moreSeparators&&(r.wordSeparators?(console.warn("Parsec WARNING: You cannot set both options wordSeparators & options.moreSeparator ; moreSeparator is ignored"),delete r.moreSeparator):r.wordSeparators=_index.C.charIn(" \n:-,;"+r.moreSeparators)),r):{}}},{key:"spaces",value:function(){return _index.C.charIn(this.options.spacesCharacters).rep().map(function(r){return r.join("")})}},{key:"number",value:function(){return _index.N.digit.rep().map(function(r){return parseInt(r.join(""))})}},{key:"digits",value:function(){return _index.N.digit.rep().map(function(r){return r.join("")})}},{key:"word",value:function(){return this.options.letter.rep().map(function(r){return r.join("")})}},{key:"_wordSeparators",value:function(){return this.spaces().or(this.options.wordSeparators)}},{key:"words",value:function(){return arguments.length>0&&void 0!==arguments[0]&&!arguments[0]?_index.F.try(this._wordSeparators().optrep().thenRight(this.word())).rep().thenLeft(this._wordSeparators().optrep()).map(function(r){return r.array()}):_index.F.try(this.word().or(this._wordSeparators())).rep().map(function(r){return r.array()})}},{key:"wordsIn",value:function(r){return arguments.length>1&&void 0!==arguments[1]&&!arguments[1]?_index.F.try(this._wordSeparators().optrep().thenRight(this.stringIn(r))).rep().thenLeft(this._wordSeparators().optrep()).map(function(r){return r.array()}):_index.F.try(this.stringIn(r).or(this._wordSeparators())).rep().map(function(r){return r.array()})}},{key:"stringIn",value:function(r){var e=function(r){return _index.F.try(_index.C.string(r))};if(0===r.length)return e("").thenReturns(void 0);if(1===r.length)return _index.F.try(_index.C.string(r[0]));var t=e(r[0]);return r.slice(1).reduce(function(r,t){return r.or(e(t))},t)}},{key:"_wordSequence",value:function(r){return _index.F.not(r)}},{key:"wordsUntil",value:function(r){return"string"==typeof r?satisfyStringFast(r):Array.isArray(r)?satisfyArrayStringFast(r):_index.F.try(this._wordSequence(r).rep().then(_index.F.eos).thenReturns(void 0)).or(this._wordSequence(r).rep().map(function(r){return r.join("")})).filter(function(r){return void 0!==r})}}]),r}();exports.default=ExtractorBundle; },{"../../index":10,"./../../parsec/parser":15,"./../../parsec/response":16}],18:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _jsonparser=require("./json/jsonparser"),_jsonparser2=_interopRequireDefault(_jsonparser),_markdownParser=require("./markdown/markdown-parser"),_markdownParser2=_interopRequireDefault(_markdownParser),_markdownBundle=require("./markdown/markdown-bundle"),_markdownBundle2=_interopRequireDefault(_markdownBundle),_extractorBundle=require("./extractor/extractor-bundle"),_extractorBundle2=_interopRequireDefault(_extractorBundle),_tokenBundle=require("./token-bundle"),_tokenBundle2=_interopRequireDefault(_tokenBundle);exports.default={jsonParser:_jsonparser2.default,markdownDocument:_markdownParser2.default,markdownBundle:_markdownBundle2.default,extractorBundle:_extractorBundle2.default,tokenBundle:_tokenBundle2.default}; },{"./extractor/extractor-bundle":17,"./json/jsonparser":19,"./markdown/markdown-bundle":22,"./markdown/markdown-parser":23,"./token-bundle":27}],19:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function tkKey(e){return tkKeyword.match(e)}function arrayOrNothing(){var e=[],t=function(t){e=e.concat(t)},n=function(){return e},r=_index.F.lazy(expr).map(t);return r.then(tkKey(",").thenRight(r).optrep()).opt().map(n)}function objectOrNothing(){var e={},t=function(t){e[t[0]]=t[1]},n=function(){return e},r=tkString.thenLeft(tkKey(":")).then(_index.F.lazy(expr)).map(t);return r.thenLeft(tkKey(",").then(r).optrep()).opt().map(n)}function expr(){return tkNumber.or(tkString).or(tkKey("null").thenReturns(null)).or(tkKey("true").thenReturns(!0)).or(tkKey("false").thenReturns(!1)).or(tkKey("[").thenRight(_index.F.lazy(arrayOrNothing)).thenLeft(tkKey("]"))).or(tkKey("{").thenRight(_index.F.lazy(objectOrNothing)).thenLeft(tkKey("}")))}Object.defineProperty(exports,"__esModule",{value:!0});var _genlex=require("../../genlex/genlex.js"),_genlex2=_interopRequireDefault(_genlex),_token=require("../../genlex/token"),_token2=_interopRequireDefault(_token),_index=require("../../parsec/index"),tkNumber=_token2.default.parser.number,tkString=_token2.default.parser.string,tkKeyword=_token2.default.parser.keyword;exports.default={parse:function(e){var t=["null","false","true","{","}","[","]",":",","];return _genlex2.default.generator(t).tokenBetweenSpaces(_token2.default.builder).chain(expr().thenLeft(_index.F.eos)).parse(e,0)}}; },{"../../genlex/genlex.js":6,"../../genlex/token":8,"../../parsec/index":13}],20:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function stop(){return _index.F.eos.or(_index.C.charIn("\r\n*`"))}function pureText(){return _index.F.not(stop()).rep().map(function(e){return e.join("")})}function formattedSequence(){return _textParser2.default.formattedSequence(pureText(),stop())}function bulletLv1(){return _index.C.char("\n").optrep().then(_index.C.charIn("*-")).then(_index.C.charIn("  ")).thenRight(formattedSequence()).map(function(e){return{bullet:{level:1,content:e.array()}}})}function bulletLv2(){return _index.C.char("\n").optrep().then(_token2.default.fourSpacesBlock()).then(_index.C.char(" ").optrep()).then(_index.C.charIn("*-")).then(_index.C.charIn("  ")).thenRight(formattedSequence()).map(function(e){return{bullet:{level:2,content:e.array()}}})}function bullet(){return _index.F.try(bulletLv2()).or(bulletLv1())}function parseBullet(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return bullet().parse(_index3.default.ofString(e),t)}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../../parsec/index"),_index2=require("../../stream/index"),_index3=_interopRequireDefault(_index2),_textParser=require("./text-parser"),_textParser2=_interopRequireDefault(_textParser),_token=require("./token"),_token2=_interopRequireDefault(_token);exports.default={bulletLv1:bulletLv1,bulletLv2:bulletLv2,bullet:bullet,parse:function(e){return parseBullet(e,0)}}; },{"../../parsec/index":13,"../../stream/index":30,"./text-parser":24,"./token":26}],21:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function codeLine(){return _index.C.char("\n").optrep().thenRight(_token2.default.fourSpacesBlock()).thenRight(_token2.default.fourSpacesBlock()).thenRight(_token2.default.rawTextUntilChar("\n",!0)).map(function(e){return{code:e}})}function parseCodeLine(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return codeLine().parse(_index3.default.ofString(e),n)}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../../parsec/index"),_index2=require("../../stream/index"),_index3=_interopRequireDefault(_index2),_token=require("./token"),_token2=_interopRequireDefault(_token);exports.default={codeLine:codeLine,parse:function(e){return parseCodeLine(e,0)}}; },{"../../parsec/index":13,"../../stream/index":30,"./token":26}],22:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});var _token=require("./token"),_token2=_interopRequireDefault(_token),_textParser=require("./text-parser"),_textParser2=_interopRequireDefault(_textParser),_titleParser=require("./title-parser"),_titleParser2=_interopRequireDefault(_titleParser),_bulletParser=require("./bullet-parser"),_bulletParser2=_interopRequireDefault(_bulletParser),_codeLineParser=require("./code-line-parser"),_codeLineParser2=_interopRequireDefault(_codeLineParser);exports.default={blank:_token2.default.blank,rawTextUntilChar:_token2.default.rawTextUntilChar,eol:_token2.default.eol,lineFeed:_token2.default.lineFeed,fourSpacesBlock:_token2.default.fourSpacesBlock,stop:_textParser2.default.stop,pureText:_textParser2.default.pureText,italic:_textParser2.default.italic,bold:_textParser2.default.bold,code:_textParser2.default.code,text:_textParser2.default.text,formattedSequence:_textParser2.default.formattedSequence,formattedParagraph:_textParser2.default.formattedParagraph,titleLine:_titleParser2.default.titleLine,titleSharp:_titleParser2.default.titleSharp,title:_titleParser2.default.title,bulletLv1:_bulletParser2.default.bulletLv1,bulletLv2:_bulletParser2.default.bulletLv2,bullet:_bulletParser2.default.bullet,codeLine:_codeLineParser2.default.codeLine}; },{"./bullet-parser":20,"./code-line-parser":21,"./text-parser":24,"./title-parser":25,"./token":26}],23:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function mdLine(){return _index.F.try(_titleParser2.default.title()).or(_index.F.try(_codeLineParser2.default.codeLine())).or(_index.F.try(_bulletParser2.default.bullet())).or(_index.F.try(_textParser2.default.formattedParagraph())).or(_token2.default.lineFeed())}function document(){return mdLine().rep().map(function(e){return e.array()})}function _parseLine(e){return mdLine().parse(_index3.default.ofString(e),0)}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../../parsec/index"),_index2=require("../../stream/index"),_index3=_interopRequireDefault(_index2),_token=require("./token"),_token2=_interopRequireDefault(_token),_textParser=require("./text-parser"),_textParser2=_interopRequireDefault(_textParser),_titleParser=require("./title-parser"),_titleParser2=_interopRequireDefault(_titleParser),_bulletParser=require("./bullet-parser"),_bulletParser2=_interopRequireDefault(_bulletParser),_codeLineParser=require("./code-line-parser"),_codeLineParser2=_interopRequireDefault(_codeLineParser);exports.default={mdLine:mdLine,parseLine:function(e){return _parseLine(e,0)},parse:function(e,r){return document().parse(e,r)}}; },{"../../parsec/index":13,"../../stream/index":30,"./bullet-parser":20,"./code-line-parser":21,"./text-parser":24,"./title-parser":25,"./token":26}],24:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function trimStartingLineFeed(e){return e.replace(/^[\s]*/,"")}function trimEndingLineFeed(e){return e.replace(/[\s]*$/,"")}function stop(){return _index.F.eos.or(_token2.default.lineFeed()).or(_index.C.charIn("*`"))}function pureText(){return _index.F.not(stop()).rep().map(function(e){return e.join("").replace(/\n/g," ").replace(/\r/g,"")})}function italic(e){return _index.C.char("*").thenRight(e).thenLeft(_index.C.char("*")).map(function(e){return{italic:e}})}function bold(e){return _index.C.string("**").thenRight(e).thenLeft(_index.C.string("**")).map(function(e){return{bold:e}})}function code(e){return _index.C.char("`").thenRight(e).thenLeft(_index.C.char("`")).map(function(e){return{code:e}})}function text(e){return e.map(function(e){return{text:e}})}function formattedSequence(e,t){return bold(e).or(italic(e)).or(text(e)).or(code(e)).rep().thenLeft(t)}function formattedParagraph(){return _token2.default.blank().thenRight(formattedSequence(pureText(),stop())).map(function(e){var t=e.array();if(t.length>0&&"object"===_typeof(t[0])&&t[0].text){t[0].text=trimStartingLineFeed(t[0].text);var n=t.length-1;t[n].text=trimEndingLineFeed(t[n].text)}return{paragraph:t}})}function parseText(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return formattedParagraph().parse(_index3.default.ofString(e),t)}Object.defineProperty(exports,"__esModule",{value:!0});var _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_index=require("../../parsec/index"),_index2=require("../../stream/index"),_index3=_interopRequireDefault(_index2),_token=require("./token"),_token2=_interopRequireDefault(_token);exports.default={stop:stop,pureText:pureText,italic:italic,bold:bold,code:code,text:text,formattedSequence:formattedSequence,formattedParagraph:formattedParagraph,parse:function(e){return parseText(e,0)}}; },{"../../parsec/index":13,"../../stream/index":30,"./token":26}],25:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function sharps(){return _index.C.char("#").rep().map(function(e){return e.array().length})}function white(){return _index.C.charIn(" \t ").rep()}function equals(){return _index.C.string("===").then(_token2.default.rawTextUntil(_token2.default.eol())).then(_token2.default.eol()).thenReturns(1)}function minuses(){return _index.C.string("---").then(_token2.default.rawTextUntil(_token2.default.eol())).then(_token2.default.eol()).thenReturns(2)}function titleSharp(){return sharps().thenLeft(white()).then(_token2.default.rawTextUntil(_token2.default.eol())).thenLeft(_token2.default.eol().or(_index.F.eos)).map(function(e){return{title:{level:e[0],text:e[1]}}})}function titleLine(){return _token2.default.blank().thenRight(_token2.default.rawTextUntilChar("\r\n").thenLeft(_token2.default.eol()).then(equals().or(minuses())).map(function(e){return{title:{level:e[1],text:e[0]}}}))}function title(){return titleSharp().or(titleLine())}function parseTitle(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return title().parse(_index3.default.ofString(e),t)}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../../parsec/index"),_index2=require("../../stream/index"),_index3=_interopRequireDefault(_index2),_token=require("./token"),_token2=_interopRequireDefault(_token);exports.default={titleLine:titleLine,titleSharp:titleSharp,title:title,parse:function(e){return parseTitle(e,0)}}; },{"../../parsec/index":13,"../../stream/index":30,"./token":26}],26:[function(require,module,exports){ "use strict";function blank(){return _index.C.charIn(" \t").optrep().thenReturns("")}function rawTextUntilChar(e){return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?_index.C.charNotIn(e).optrep().map(function(e){return e.join("")}):_index.C.charNotIn(e).rep().map(function(e){return e.join("")})}function rawTextUntil(e){return _index.F.not(e).rep().map(function(e){return e.join("")})}function eol(){return _index.C.char("\n").or(_index.C.string("\r\n"))}function lineFeed(){return eol().then(blank()).then(eol()).thenReturns({linefeed:void 0})}function fourSpacesBlock(){return _index.C.char("\t").or(_index.C.charIn("  ").occurrence(4))}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../../parsec/index");exports.default={blank:blank,rawTextUntilChar:rawTextUntilChar,rawTextUntil:rawTextUntil,eol:eol,lineFeed:lineFeed,fourSpacesBlock:fourSpacesBlock}; },{"../../parsec/index":13}],27:[function(require,module,exports){ "use strict";function _inQuote(){return _index.C.char('"').then(_index.C.notChar('"').rep().map(function(n){return n.array()})).then(_index.C.char('"'))}function email(){return _inQuote().or(_index.C.charNotIn(" @ \n\t")).rep().map(function(n){return n.array()}).then(_index.C.char("@")).then(_index.C.charNotIn(" @ \n\t.").rep().map(function(n){return n.array()})).then(_index.C.char(".")).then(_index.C.charNotIn(" @ \n\t.").rep().map(function(n){return n.array()})).map(function(n){return{email:n.join("")}})}function date(){return _index.N.digits.then(_index.C.charIn("-/").thenReturns("-")).then(_index.N.digits).then(_index.C.charIn("-/").thenReturns("-")).then(_index.N.digits).map(function(n){return n[4]>2e3?n.reverse():n}).map(function(n){return n.join("")})}function blank(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:" \t";return"string"==typeof n?_index.C.charIn(n).optrep().thenReturns(""):n.optrep().thenReturns("")}function eol(){return _index.C.char("\n").or(_index.C.string("\r\n"))}Object.defineProperty(exports,"__esModule",{value:!0});var _index=require("../parsec/index");exports.default={email:email,date:date,blank:blank,eol:eol()}; },{"../parsec/index":13}],28:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function factory(e){return new ArrayStream(e)}Object.defineProperty(exports,"__esModule",{value:!0});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}(),_stream=require("./stream"),_stream2=_interopRequireDefault(_stream),ArrayStream=function(e){function t(e){_classCallCheck(this,t);var r=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this));return r.source=e,r}return _inherits(t,e),_createClass(t,[{key:"endOfStream",value:function(e){return this.source.length<=e}},{key:"unsafeGet",value:function(e){return this.source[e]}}]),t}(_stream2.default);exports.default=factory; },{"./stream":32}],29:[function(require,module,exports){ "use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expressio