mp_file_type Derived Type

type, public :: mp_file_type


Components

Type Visibility Attributes Name Initial
integer, private :: handle = mp_file_null_handle

Type-Bound Procedures

procedure, public, pass(file), non_overridable :: get_handle => mp_get_file_handle

  • private elemental function mp_get_file_handle(file)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(in) :: file

    Return Value integer

procedure, public, pass(file), non_overridable :: set_handle => mp_set_file_handle

  • private elemental subroutine mp_set_file_handle(file, handle)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(inout) :: file
    integer, intent(in) :: handle

procedure, private, pass(file1), non_overridable :: mp_file_op_eq

  • private impure elemental function mp_file_op_eq(file1, file2)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(in) :: file1
    class(mp_file_type), intent(in) :: file2

    Return Value logical

generic, public :: OPERATOR(.EQ.) => mp_file_op_eq

  • private impure elemental function mp_file_op_eq(file1, file2)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(in) :: file1
    class(mp_file_type), intent(in) :: file2

    Return Value logical

procedure, private, pass(file1), non_overridable :: mp_file_op_ne

  • private impure elemental function mp_file_op_ne(file1, file2)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(in) :: file1
    class(mp_file_type), intent(in) :: file2

    Return Value logical

generic, public :: OPERATOR(.NE.) => mp_file_op_ne

  • private impure elemental function mp_file_op_ne(file1, file2)

    Arguments

    Type IntentOptional Attributes Name
    class(mp_file_type), intent(in) :: file1
    class(mp_file_type), intent(in) :: file2

    Return Value logical

Source Code

   TYPE mp_file_type
      PRIVATE
      MPI_FILE_TYPE :: handle = mp_file_null_handle
   CONTAINS
      PROCEDURE, PUBLIC, PASS(file), NON_OVERRIDABLE :: get_handle => mp_get_file_handle
      PROCEDURE, PUBLIC, PASS(file), NON_OVERRIDABLE :: set_handle => mp_set_file_handle
      PROCEDURE, PRIVATE, PASS(file1), NON_OVERRIDABLE :: mp_file_op_eq
      GENERIC, PUBLIC :: OPERATOR(.EQ.) => mp_file_op_eq
      PROCEDURE, PRIVATE, PASS(file1), NON_OVERRIDABLE :: mp_file_op_ne
      GENERIC, PUBLIC :: OPERATOR(.NE.) => mp_file_op_ne
   END TYPE mp_file_type