srcfile_t Derived Type

type, public :: srcfile_t

Type for describing a source file


Contents

Source Code


Components

Type Visibility Attributes Name Initial
integer(kind=int64), public :: digest

Current hash

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

Name of executable for FPM_UNIT_PROGRAM

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

File path relative to cwd

type(string_t), public, allocatable :: include_dependencies(:)

Files INCLUDEd by this source file

type(string_t), public, allocatable :: link_libraries(:)

Native libraries to link against

type(string_t), public, allocatable :: modules_provided(:)

Modules provided by this source file (lowerstring)

type(string_t), public, allocatable :: modules_used(:)

Modules USEd by this source file (lowerstring)

type(string_t), public, allocatable :: parent_modules(:)

Parent modules (submodules only)

integer, public :: unit_scope = FPM_SCOPE_UNKNOWN

Target module-use scope

integer, public :: unit_type = FPM_UNIT_UNKNOWN

Type of source unit


Source Code

type srcfile_t
    !> File path relative to cwd
    character(:), allocatable :: file_name

    !> Name of executable for FPM_UNIT_PROGRAM
    character(:), allocatable :: exe_name

    !> Target module-use scope
    integer :: unit_scope = FPM_SCOPE_UNKNOWN

    !> Modules provided by this source file (lowerstring)
    type(string_t), allocatable :: modules_provided(:)

    !> Type of source unit
    integer :: unit_type = FPM_UNIT_UNKNOWN

    !> Parent modules (submodules only)
    type(string_t), allocatable :: parent_modules(:)

    !>  Modules USEd by this source file (lowerstring)
    type(string_t), allocatable :: modules_used(:)

    !> Files INCLUDEd by this source file
    type(string_t), allocatable :: include_dependencies(:)

    !> Native libraries to link against
    type(string_t), allocatable :: link_libraries(:)

    !> Current hash
    integer(int64) :: digest

end type srcfile_t