weaponregex.model.regextree

Members list

Concise view

Type members

Classlikes

case class AnyDot(location: Location) extends Leaf[Char]

Any dot . predefined character class leaf node

Any dot . predefined character class leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

Note:

This is technically a predefined character class, but because it cannot be negated nor has a \ prefix, it is handled separately here

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Char]
trait RegexTree
class Object
trait Matchable
class Any
case class AtomicGroup(expr: RegexTree, location: Location) extends Node

Atomic (independent, non-capturing) group node

Atomic (independent, non-capturing) group node

Attributes

expr

The regex inside the group

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class BOL(location: Location) extends Leaf[Char]

Beginning of Line (BOL) leaf node

Beginning of Line (BOL) leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Char]
trait RegexTree
class Object
trait Matchable
class Any
case class Boundary(boundary: String, location: Location) extends Leaf[String]

Boundary meta character leaf node

Boundary meta character leaf node

Attributes

boundary

The literal boundary character without the \

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class CharClassIntersection(nodes: Seq[RegexTree], location: Location) extends Node

Character class intersection used inside a character class

Character class intersection used inside a character class

Attributes

location

The weaponregex.model.Location of the node in the regex string

nodes

The nodes that are being "or-ed"

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class Character(char: Char, location: Location) extends Leaf[Char]

Character literal leaf node

Character literal leaf node

Attributes

char

The character literal value

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Char]
trait RegexTree
class Object
trait Matchable
class Any
case class CharacterClass(nodes: Seq[RegexTree], location: Location, isPositive: Boolean) extends Node

Character class node

Character class node

Attributes

isPositive

true if the character class is positive, false otherwise

location

The weaponregex.model.Location of the node in the regex string

nodes

The child nodes contained in the character class

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class CharacterClassNaked(nodes: Seq[RegexTree], location: Location) extends Node

Character class node without the surround syntactical symbols, i.e. "naked"

Character class node without the surround syntactical symbols, i.e. "naked"

Attributes

location

The weaponregex.model.Location of the node in the regex string

nodes

The child nodes contained in the character class

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class Concat(nodes: Seq[RegexTree], location: Location) extends Node

Concatenation node

Concatenation node

Attributes

location

The weaponregex.model.Location of the node in the regex string

nodes

The nodes that are being concatenated

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class ControlChar(controlChar: String, location: Location) extends Leaf[String]

Control meta-characters leaf node corresponding to a given character

Control meta-characters leaf node corresponding to a given character

Attributes

controlChar

Any character in a-z or A-Z

location

weaponregex.model.Location of the token in the regex string

Note:

This is technically a meta-character, but because it has an additional target character and a \c prefix, it is handled separately here

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class EOL(location: Location) extends Leaf[Char]

End of Line (EOL) leaf node

End of Line (EOL) leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Char]
trait RegexTree
class Object
trait Matchable
class Any
case class Empty(location: Location) extends Leaf[String]

Empty string (nothing, null) leaf

Empty string (nothing, null) leaf

Attributes

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class FlagNCGroup(flagToggle: FlagToggle, expr: RegexTree, location: Location) extends Node

Non-capturing group with flags

Non-capturing group with flags

Attributes

expr

The regex inside the group

flagToggle

The weaponregex.model.regextree.FlagToggle object associated with the group

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class FlagToggle(onFlags: Flags, hasDash: Boolean, offFlags: Flags, location: Location) extends Node

Flag toggle node that describes which flags are toggled on and/or off

Flag toggle node that describes which flags are toggled on and/or off

Attributes

hasDash

true if there is a dash character - between the onFlags and offFlags, false otherwise

location

The weaponregex.model.Location of the node in the regex string

offFlags

The flags that are toggled off

onFlags

The flags that are toggled on

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class FlagToggleGroup(flagToggle: FlagToggle, location: Location) extends Node

Flag toggle group node

Flag toggle group node

Attributes

flagToggle

The weaponregex.model.regextree.FlagToggle object associated with the group

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class Flags(flags: Seq[Character], location: Location) extends Node

A sequence of flags for use in weaponregex.model.regextree.FlagToggle

A sequence of flags for use in weaponregex.model.regextree.FlagToggle

Attributes

flags

The sequence of flag weaponregex.model.regextree.Character s

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case object GreedyQuantifier extends QuantifierType

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Self type
case class Group(expr: RegexTree, isCapturing: Boolean, location: Location) extends Node

(Non-)capturing group node

(Non-)capturing group node

Attributes

expr

The regex inside the group

isCapturing

true if group is capturing, false otherwise

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
abstract class Leaf[A](val value: A, val location: Location, val prefix: String, val postfix: String) extends RegexTree

The leaf of the weaponregex.model.regextree.RegexTree (terminal node) that have no children node

The leaf of the weaponregex.model.regextree.RegexTree (terminal node) that have no children node

Attributes

location

The weaponregex.model.Location of the node in the regex string

postfix

The string that is put after the leaf's value when building

prefix

The string that is put in front of the leaf's value when building

value

The value that the leaf holds

Graph
Supertypes
trait RegexTree
class Object
trait Matchable
class Any
Known subtypes
case class Lookaround(expr: RegexTree, isPositive: Boolean, isLookahead: Boolean, location: Location) extends Node

The umbrella node for positive/negative lookahead/lookbehind

The umbrella node for positive/negative lookahead/lookbehind

Attributes

expr

The regex inside the lookaround

isLookahead

true if this is a lookahead, false if this is a lookbehind

isPositive

true if the lookaround is positive, false otherwise

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class MetaChar(metaChar: String, location: Location) extends Leaf[String]

Meta-characters leaf node

Meta-characters leaf node

Attributes

location

weaponregex.model.Location of the token in the regex string

metaChar

Can be any meta character as defined in the grammar

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class NameReference(name: String, location: Location) extends Leaf[String]

Reference to a named capturing group leaf node

Reference to a named capturing group leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

name

The name of the capturing group being referenced

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class NamedGroup(expr: RegexTree, name: String, location: Location) extends Node

Named capturing group node

Named capturing group node

Attributes

expr

The regex inside the group

location

The weaponregex.model.Location of the node in the regex string

name

The name of the group

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
abstract class Node(val children: Seq[RegexTree], val location: Location, val prefix: String, val postfix: String, val sep: String) extends RegexTree

The non-terminal node of the weaponregex.model.regextree.RegexTree that have at least one child node

The non-terminal node of the weaponregex.model.regextree.RegexTree that have at least one child node

Attributes

children

The children that fall under this node

location

The weaponregex.model.Location of the node in the regex string

postfix

The string that is put after the node's children when building

prefix

The string that is put in front of the node's children when building

sep

The string that is put in between the node's children when building

Graph
Supertypes
trait RegexTree
class Object
trait Matchable
class Any
Known subtypes
case class NumberReference(num: Int, location: Location) extends Leaf[Int]

Reference to a numbered capturing group leaf node

Reference to a numbered capturing group leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

num

The order number of the capturing group being referenced

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Int]
trait RegexTree
class Object
trait Matchable
class Any
case class Or(nodes: Seq[RegexTree], location: Location) extends Node

Or node (e.g. a|b|c)

Or node (e.g. a|b|c)

Attributes

location

The weaponregex.model.Location of the node in the regex string

nodes

The nodes that are being "or-ed"

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Node
trait RegexTree
class Object
trait Matchable
class Any
case class POSIXCharClass(property: String, location: Location, isPositive: Boolean) extends Leaf[String]

POSIX character class leaf node

POSIX character class leaf node

Attributes

location

The weaponregex.model.Location of the node in the regex string

property

The class character property

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Self type
case class PredefinedCharClass(charClass: String, location: Location) extends Leaf[String]

Predefined character class leaf node

Predefined character class leaf node

Attributes

charClass

The literal class character without the \

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
sealed abstract class QuantifierType(syntax: String)

The enumeration of the quantifier type

The enumeration of the quantifier type

Attributes

syntax

The syntax used to represent the quantifier type

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
case class Quote(quote: String, hasEnd: Boolean, location: Location) extends Leaf[String]

Quote from \Q to an optional \E

Quote from \Q to an optional \E

Attributes

hasEnd

true if quote has an end symbol \E, false otherwise

location

The weaponregex.model.Location of the node in the regex string

quote

The string being quoted

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[String]
trait RegexTree
class Object
trait Matchable
class Any
case class QuoteChar(char: Char, location: Location) extends Leaf[Char]

Quote for the following single character

Quote for the following single character

Attributes

char

The character being quoted

location

The weaponregex.model.Location of the node in the regex string

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Leaf[Char]
trait RegexTree
class Object
trait Matchable
class Any
sealed trait RegexTree

The abstraction of a RegexTree node

The abstraction of a RegexTree node

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Self type