ChildSpec Derived Type

type, public :: ChildSpec


Inherits

type~~childspec~~InheritsGraph type~childspec ChildSpec type~abstractusersetservices AbstractUserSetServices type~childspec->type~abstractusersetservices user_setservices

Inherited by

type~~childspec~~InheritedByGraph type~childspec ChildSpec type~childspecpair ChildSpecPair type~childspecpair->type~childspec second type~map_s_node~7 map_s_Node type~map_s_node~7->type~childspecpair value type~map_s_node~7->type~map_s_node~7 parent type~map_setiterator~7 map_SetIterator type~map_setiterator~7->type~map_s_node~7 node type~childspecmapiterator ChildSpecMapIterator type~childspecmapiterator->type~map_setiterator~7 set_iter

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: config_file
class(AbstractUserSetServices), public, allocatable :: user_setservices

Constructor

public interface ChildSpec

  • private function new_ChildSpec(user_setservices, unusable, config_file) result(spec)

    Arguments

    Type IntentOptional Attributes Name
    class(AbstractUserSetServices), intent(in) :: user_setservices
    class(KeywordEnforcer), intent(in), optional :: unusable
    character(len=*), intent(in), optional :: config_file

    Return Value type(ChildSpec)


Type-Bound Procedures

generic, public :: write(formatted) => write_formatted

  • private subroutine write_formatted(this, unit, iotype, v_list, iostat, iomsg)

    Arguments

    Type IntentOptional Attributes Name
    class(ChildSpec), intent(in) :: this
    integer, intent(in) :: unit
    character(len=*), intent(in) :: iotype
    integer, intent(in) :: v_list(:)
    integer, intent(out) :: iostat
    character(len=*), intent(inout) :: iomsg

procedure, public :: write_formatted

  • private subroutine write_formatted(this, unit, iotype, v_list, iostat, iomsg)

    Arguments

    Type IntentOptional Attributes Name
    class(ChildSpec), intent(in) :: this
    integer, intent(in) :: unit
    character(len=*), intent(in) :: iotype
    integer, intent(in) :: v_list(:)
    integer, intent(out) :: iostat
    character(len=*), intent(inout) :: iomsg

Source Code

   type :: ChildSpec
      class(AbstractUserSetServices), allocatable :: user_setservices
      character(:), allocatable :: config_file
      ! Prevent default structure constructor
      integer, private ::  hack
   contains
      procedure :: write_formatted
      generic :: write(formatted) => write_formatted
   end type ChildSpec