object Derived Type

type, public, abstract :: object

Define an abstract parent type to ensure basic functionality expected to be provided by all non-abstract types. Each non-abstract type provides the functionality by extending this type and implementing its deferred binding(s). This type resembles java's Object class in the sense that it is intended to be the ultimate ancestor of every other type.


Inherited by

type~~object~~InheritedByGraph type~object object type~grid grid type~grid->type~object type~units units type~grid->type~units units_ type~units->type~object type~problem_discretization problem_discretization type~problem_discretization->type~object type~structured_grid structured_grid type~problem_discretization->type~structured_grid block_map, vertices, scalar_fields, scalar_flux_divergence type~mesh mesh type~mesh->type~grid type~structured_grid->type~grid type~field field type~field->type~grid type~field->type~mesh msh type~pde pde type~pde->type~mesh msh type~cylindrical_grid cylindrical_grid type~cylindrical_grid->type~structured_grid type~cylindrical_grid->type~cylindrical_grid scale_factor type~spherical_grid spherical_grid type~spherical_grid->type~structured_grid type~cartesian_grid cartesian_grid type~cartesian_grid->type~structured_grid type~vector_field vector_field type~vector_field->type~field type~scalar_field scalar_field type~scalar_field->type~field type~curvilinear_grid curvilinear_grid type~curvilinear_grid->type~structured_grid metric_tensor type~curvilinear_grid->type~structured_grid type~scalar_pde scalar_pde type~scalar_pde->type~pde type~vector_pde vector_pde type~vector_pde->type~pde

Contents


Components

TypeVisibility AttributesNameInitial
logical, private :: defined =.false.

Default initialization indicates not yet user-defined


Type-Bound Procedures

procedure, public :: mark_as_defined

  • interface

    private pure module subroutine mark_as_defined(this)

    Mark the object as user-defined

    Arguments

    Type IntentOptional AttributesName
    class(object), intent(inout) :: this

procedure, public :: user_defined

  • interface

    private pure module function user_defined(this) result(is_defined)

    Return a boolean result indicating whether this object has been initialized since its declaration

    Arguments

    Type IntentOptional AttributesName
    class(object), intent(in) :: this

    Return Value logical