UNPKG

@js-joda/core

Version:

a date and time library for javascript

45 lines (37 loc) 1.57 kB
/** * @copyright (c) 2016, Philipp Thürwächter & Pattrick Hüper * @copyright (c) 2007-present, Stephen Colebourne & Michael Nascimento Santos * @license BSD-3-Clause (see LICENSE in the root directory of this source tree) */ import { Enum } from '../../Enum'; /** * @private */ export class SettingsParser extends Enum { print(/*context, buf*/) { return true; // nothing to do here } parse(context, text, position) { // using ordinals to avoid javac synthetic inner class switch (this) { case SettingsParser.SENSITIVE: context.setCaseSensitive(true); break; case SettingsParser.INSENSITIVE: context.setCaseSensitive(false); break; case SettingsParser.STRICT: context.setStrict(true); break; case SettingsParser.LENIENT: context.setStrict(false); break; } return position; } toString() { // using ordinals to avoid javac synthetic inner class switch (this) { case SettingsParser.SENSITIVE: return 'ParseCaseSensitive(true)'; case SettingsParser.INSENSITIVE: return 'ParseCaseSensitive(false)'; case SettingsParser.STRICT: return 'ParseStrict(true)'; case SettingsParser.LENIENT: return 'ParseStrict(false)'; } } } SettingsParser.SENSITIVE = new SettingsParser('SENSITIVE'); SettingsParser.INSENSITIVE = new SettingsParser('INSENSITIVE'); SettingsParser.STRICT = new SettingsParser('STRICT'); SettingsParser.LENIENT = new SettingsParser('LENIENT');