package_config_t Derived Type

type, public :: package_config_t

Package meta data


Source Code


Type Visibility Attributes Name Initial
type(build_config_t), public :: build

Build configuration data

type(dependency_config_t), public, allocatable :: dependency(:)

Dependency meta data

type(dependency_config_t), public, allocatable :: dev_dependency(:)

Development dependency meta data

type(example_config_t), public, allocatable :: example(:)

Example meta data

type(executable_config_t), public, allocatable :: executable(:)

Executable meta data

type(fortran_config_t), public :: fortran

Fortran meta data

type(install_config_t), public :: install

Installation configuration data

type(library_config_t), public, allocatable :: library

Library meta data

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

License meta data

type(metapackage_config_t), public :: meta

Metapackage data

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

Name of the package

type(preprocess_config_t), public, allocatable :: preprocess(:)

Preprocess meta data

type(profile_config_t), public, allocatable :: profiles(:)

Profiles meta data

type(test_config_t), public, allocatable :: test(:)

Test meta data

type(version_t), public :: version

Package version

Type-Bound Procedures

procedure, public, :: info

Print information on this instance

  • private subroutine info(self, unit, verbosity)

    Write information on instance


    Type IntentOptional Attributes Name
    class(package_config_t), intent(in) :: self

    Instance of the package configuration

    integer, intent(in) :: unit

    Unit for IO

    integer, intent(in), optional :: verbosity

    Verbosity of the printout

Source Code

    type :: package_config_t

        !> Name of the package
        character(len=:), allocatable :: name

        !> Package version
        type(version_t) :: version

        !> Build configuration data
        type(build_config_t) :: build

        !> Metapackage data
        type(metapackage_config_t) :: meta

        !> Installation configuration data
        type(install_config_t) :: install

        !> Fortran meta data
        type(fortran_config_t) :: fortran

        !> License meta data
        character(len=:), allocatable :: license

        !> Library meta data
        type(library_config_t), allocatable :: library

        !> Executable meta data
        type(executable_config_t), allocatable :: executable(:)

        !> Dependency meta data
        type(dependency_config_t), allocatable :: dependency(:)

        !> Development dependency meta data
        type(dependency_config_t), allocatable :: dev_dependency(:)

        !> Profiles meta data
        type(profile_config_t), allocatable :: profiles(:)

        !> Example meta data
        type(example_config_t), allocatable :: example(:)

        !> Test meta data
        type(test_config_t), allocatable :: test(:)

        !> Preprocess meta data
        type(preprocess_config_t), allocatable :: preprocess(:)


        !> Print information on this instance
        procedure :: info

    end type package_config_t