tree_t Derived Type

type, public :: tree_t


Components

Type Visibility Attributes Name Initial
type(tree_node_t), public, allocatable :: nodes(:)
integer, public :: num_alloc = 0
type(tape_t), public :: tape
integer, public :: top = INVALID_INDEX

Type-Bound Procedures

procedure, public :: build => tree_graph__build_syntax_tree

  • private pure subroutine tree_graph__build_syntax_tree(self, pattern)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self
    character(len=*), intent(in) :: pattern

procedure, public :: caret_dollar => tree_graph__make_tree_caret_dollar

  • private pure subroutine tree_graph__make_tree_caret_dollar(self)

    This function constructs a tree node for carriage return (CR) and line feed (LF) characters.

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: char_class => tree_graph__char_class

procedure, public :: connect_left => tree_graph__connect_left

  • private pure subroutine tree_graph__connect_left(self, parent, child)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self
    integer, intent(in) :: parent
    integer, intent(in) :: child

procedure, public :: connect_right => tree_graph__connect_right

  • private pure subroutine tree_graph__connect_right(self, parent, child)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self
    integer, intent(in) :: parent
    integer, intent(in) :: child

procedure, public :: crlf => tree_graph__make_tree_crlf

procedure, public :: deallocate => tree_graph__deallocate

procedure, public :: get_top => tree_graph__get_top

procedure, public :: primary => tree_graph__primary

  • private pure recursive subroutine tree_graph__primary(self)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: print => print_tree_wrap

  • private subroutine print_tree_wrap(self, uni)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(in) :: self
    integer, intent(in) :: uni

procedure, public :: range => tree_graph__range

  • private pure subroutine tree_graph__range(self)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: reallocate => tree_graph__reallocate

procedure, public :: regex => tree_graph__regex

  • private pure recursive subroutine tree_graph__regex(self)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: register => tree_graph__register_node

procedure, public :: register_connector => tree_graph__register_connector

procedure, public :: shorthand => tree_graph__shorthand

  • private pure subroutine tree_graph__shorthand(self)

    This function handles shorthand escape sequences (\t, \n, \r, \d, \D, \w, \W, \s, \S).

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: suffix_op => tree_graph__suffix_op

  • private pure recursive subroutine tree_graph__suffix_op(self)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self

procedure, public :: term => tree_graph__term

  • private pure recursive subroutine tree_graph__term(self)

    Arguments

    Type IntentOptional Attributes Name
    class(tree_t), intent(inout) :: self