base Derived Type

type, public, abstract :: base

Abstract base class.


Inherited by

type~~base~~InheritedByGraph type~base base type~pbesol pbesol type~pbesol->type~base type~pbeterm pbeterm type~pbeterm->type~base type~flowterm flowterm type~flowterm->type~pbeterm type~growthterm growthterm type~growthterm->type~pbeterm type~particleterm particleterm type~particleterm->type~pbeterm type~pbe pbe type~pbe->type~pbeterm type~pbe->type~flowterm flow type~pbe->type~growthterm growth type~aggterm aggterm type~pbe->type~aggterm agg type~breakterm breakterm type~pbe->type~breakterm break type~aggterm->type~particleterm type~breakterm->type~particleterm

Contents

Source Code


Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: name

object name

character(len=:), public, allocatable :: msg

error message

integer, public :: ierr = 0

error code

logical, public :: inited = .false.

initialization flag


Type-Bound Procedures

procedure, public, pass(self) :: set_name

  • private pure subroutine set_name(self, name, default)

    Setter method for name.

    Arguments

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

    object

    character(len=*), intent(in), optional :: name

    name

    character(len=*), intent(in), optional :: default

    default name

procedure, public, pass(self) :: error_msg

  • private pure subroutine error_msg(self, msg)

    Error method.

    Arguments

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

    object

    character(len=*), intent(in) :: msg

    message

procedure, public, pass(self) :: check_inited

  • private pure subroutine check_inited(self)

    Check initialization method.

    Arguments

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

    object

Source Code

   type, abstract :: base
   !! Abstract `base` class.
      character(:), allocatable :: name
         !! object name
      character(:), allocatable :: msg
         !! error message
      integer :: ierr = 0
         !! error code
      logical :: inited = .false.
         !! initialization flag
   contains
      procedure, pass(self) :: set_name
      procedure, pass(self) :: error_msg
      procedure, pass(self) :: check_inited
   end type base