dense_dfa__add_transition Subroutine

private pure subroutine dense_dfa__add_transition(self, state_set, src, dst, cube)

Type Bound

dfa_graph_t

Arguments

Type IntentOptional Attributes Name
class(dfa_graph_t), intent(inout) :: self
type(nfa_state_set_t), intent(in) :: state_set
integer, intent(in) :: src
integer, intent(in) :: dst
type(cube_t), intent(in) :: cube

Source Code

   pure subroutine dense_dfa__add_transition(self, state_set, src, dst, cube)
      use :: forgex_cube_m, only: cube_t, assignment(=)
      use :: forgex_nfa_state_set_m, only: nfa_state_set_t
      use :: forgex_segment_m
      implicit none
      class(dfa_graph_t), intent(inout) :: self
      type(nfa_state_set_t), intent(in) :: state_set
      integer,               intent(in) :: src, dst
      type(cube_t),          intent(in) :: cube

      type(dfa_transition_t) :: tra

      call tra%c%add(cube)

      tra%dst = dst
      tra%nfa_set = state_set
      call self%nodes(src)%add_transition(tra)
   end subroutine dense_dfa__add_transition