class REGULAR_EXPRESSION_ITEM_NOT_THEN_ANY

Features exported to INTERNALS_HANDLER

negate the node such that if node matches it makes a backtrack but conversly if node fails, the character is accepted (any character) and exploration continues.

Direct parents

conformant parents

REGULAR_EXPRESSION_ITEM, REGULAR_EXPRESSION_ITEM_GLOBALS

Summary

creation features

exported features

assertions

character classes

character class naming

and/or basics

Details

make (value: BACKTRACKING_NODE)

require

  • value_not_void: value /= Void

ensure

  • definition: node = value
  • node_not_void: node /= Void

set_node (value: BACKTRACKING_NODE)

require

  • value_not_void: value /= Void

ensure

  • definition: node = value
  • node_not_void: node /= Void

node: BACKTRACKING_NODE

the node to negate

make (value: BACKTRACKING_NODE)

require

  • value_not_void: value /= Void

ensure

  • definition: node = value
  • node_not_void: node /= Void

set_node (value: BACKTRACKING_NODE)

require

  • value_not_void: value /= Void

ensure

  • definition: node = value
  • node_not_void: node /= Void

explore (matcher: BACKTRACKING_REGULAR_EXPRESSION)

That feature must update the state of 'explorer'.

the_any_character_item: REGULAR_EXPRESSION_ITEM_ANY
the_not_end_of_line_item: REGULAR_EXPRESSION_ITEM_NOT_END_OF_LINE
the_begin_of_line_item: REGULAR_EXPRESSION_ITEM_BEGIN_OF_LINE
the_end_of_line_item: REGULAR_EXPRESSION_ITEM_END_OF_LINE
the_begin_of_text_item: REGULAR_EXPRESSION_ITEM_BEGIN_OF_TEXT
the_real_end_of_text_item: REGULAR_EXPRESSION_ITEM_END_OF_TEXT
the_end_of_text_item: REGULAR_EXPRESSION_ITEM_END_OF_TEXT
the_begin_of_word_item: REGULAR_EXPRESSION_ITEM_BEGIN_OF_WORD
the_end_of_word_item: REGULAR_EXPRESSION_ITEM_END_OF_WORD
the_is_posix_alnum_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_ALNUM
the_is_posix_alpha_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_ALPHA
the_is_posix_ascii_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_ASCII
the_is_posix_blank_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_BLANK
the_is_posix_cntrl_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_CNTRL
the_is_posix_digit_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_DIGIT
the_is_posix_graph_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_GRAPH
the_is_posix_lower_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_LOWER
the_is_posix_print_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_PRINT
the_is_posix_punct_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_PUNCT
the_is_posix_space_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_SPACE
the_is_posix_upper_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_UPPER
the_is_posix_word_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_WORD
the_is_posix_xdigit_item: REGULAR_EXPRESSION_ITEM_IS_POSIX_XDIGIT
has_named_posix_item (name: STRING): BOOLEAN

True if 'name' is for a valid posix character class

require

  • name_not_void: name /= Void

named_posix_item (name: STRING): REGULAR_EXPRESSION_ITEM

the item for the valid posix character class 'name'

require

  • name_not_void: name /= Void
  • good_name: has_named_posix_item(name)

ensure

  • good_result: Result /= Void

has_named_perl_item (name: STRING): BOOLEAN

True if 'name' is for a valid perl character class

require

  • name_not_void: name /= Void

named_perl_item (name: STRING): REGULAR_EXPRESSION_ITEM

the item for the valid perl character class 'name'

require

  • name_not_void: name /= Void
  • good_name: has_named_perl_item(name)

ensure

  • good_result: Result /= Void

the_cut_node: BACKTRACKING_NODE_CUT
the_true_node: BACKTRACKING_NODE_TRUE
the_false_node: BACKTRACKING_NODE_FALSE
the_cut_and_false_node: BACKTRACKING_NODE_CUT_AND_FALSE