Added error stub for regexp-dispatch
This commit is contained in:
@@ -1,5 +1,17 @@
|
|||||||
import { inspect } from 'node:util';
|
import { inspect } from 'node:util';
|
||||||
|
|
||||||
|
// § GROUP: Regexp tokenization
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export class Tokenization_Error extends Error {
|
||||||
|
constructor(data) {
|
||||||
|
const { parser, value, index, end_index } = data;
|
||||||
|
super(`Tokenization_Error`); //TODO: Format message
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// § GROUP: Configuration field errors
|
// § GROUP: Configuration field errors
|
||||||
|
|
||||||
export class Data_Validation_Failed extends Error {
|
export class Data_Validation_Failed extends Error {
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
import * as RE from '@efforting.tech/text/regexp';
|
import * as RE from '@efforting.tech/text/regexp';
|
||||||
|
import { Tokenization_Error } from '@efforting.tech/errors';
|
||||||
|
|
||||||
|
|
||||||
// NOTE: There are some open questions about this implementation and API which may change as the library matures.
|
// NOTE: There are some open questions about this implementation and API which may change as the library matures.
|
||||||
// Check out the example at experiments/regexp-tokenizer.mjs for more information on how to use this in its current state.
|
// Check out the example at experiments/regexp-tokenizer.mjs for more information on how to use this in its current state.
|
||||||
@@ -104,7 +106,7 @@ export class RegExp_Tokenizer {
|
|||||||
_handle_default_match(value, index, end_index=null) {
|
_handle_default_match(value, index, end_index=null) {
|
||||||
const { default_action } = this;
|
const { default_action } = this;
|
||||||
if (!default_action) {
|
if (!default_action) {
|
||||||
throw new Parsing_Error({ parser: this, value, index, end_index });
|
throw new Tokenization_Error({ parser: this, value, index, end_index });
|
||||||
}
|
}
|
||||||
return new Default_Match(value, index, end_index, default_action);
|
return new Default_Match(value, index, end_index, default_action);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user