Warning: session_start(): open(/var/lib/php/sessions/sess_m9bgpgv19t6u3gtuhdlaam7ncc, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
sclass EnglishDateParser > DateStructures {
bool assumeFuture = true; // e.g. for "tuesday" [not used]
LS tok;
ItIt> parse(S s) {
tok = javaTok(s);
ItIt> years = nestedIterator parseYear(lai_codeTokens(tok));
ret nestedIterator(years, year -> itemPlusIterator(
pwt_generalize(year),
pwt_generalizeIterator(parseFixedToken("/", year.remaining()))));
// := "/" "/"
//between(parseInt(s), 1900, 2100)
//ret nestedIterator parseNumber(lai_codeTokenIndices(tok));
}
ItIt> parseNumber(ListAndIndex toParse) {
ret mapI_nonNulls(pwt_followingTokens(1, 2, toParse),
p -> isInteger(p!) ? p.withValue(parseInt(p!)) : null);
}
ItIt> parseYear(ListAndIndex toParse) {
ret filterI(parseNumber(toParse), p -> between(p!, 1900, 2100));
}
ItIt> parseFixedToken(S token, ListAndIndex toParse) {
ret filterI(pwt_followingTokens(1, 2, toParse), p -> eqic(p!, token));
}
}