Loading...
Searching...
No Matches
Method

Definition

Method module.

Data Types

interface  method
 Provides properties and instance methods for the method class. This class is a wrapper for any procedure (subroutine or function). More...

Methods

◆ dispose()

subroutine dispose ( class(method), intent(inout) this)
private

Dispose resources associated with the bound type.

Parameters
[in,out]thisThe type bound to the method

Remarks

Definition at line 868 of file Method.f90.

◆ invoke_a0()

subroutine invoke_a0 ( class(method), intent(inout) this)
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method

Examples

type(method) :: mtd
mtd = method(f)
call mtd%invoke()

Remarks

Note
This function is either used with a 0-arguments method, or with any method whose arguments have been set in the constructor.

Remarks

Definition at line 354 of file Method.f90.

◆ invoke_a1()

subroutine invoke_a1 ( class(method), intent(inout) this,
class(*), intent(in) a1 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(1, f)
call mtd%invoke(arg(a1, 'a1'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'))
call mtd%invoke()

Remarks

Definition at line 499 of file Method.f90.

◆ invoke_a2()

subroutine invoke_a2 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(2, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'))
call mtd%invoke()

Remarks

Definition at line 542 of file Method.f90.

◆ invoke_a3()

subroutine invoke_a3 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2,
class(*), intent(in) a3 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument
[in]a3dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(3, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'))
call mtd%invoke()

Remarks

Definition at line 587 of file Method.f90.

◆ invoke_a4()

subroutine invoke_a4 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2,
class(*), intent(in) a3,
class(*), intent(in) a4 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument
[in]a3dummy argument
[in]a4dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(4, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'))
call mtd%invoke()

Remarks

Definition at line 638 of file Method.f90.

◆ invoke_a5()

subroutine invoke_a5 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2,
class(*), intent(in) a3,
class(*), intent(in) a4,
class(*), intent(in) a5 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument
[in]a3dummy argument
[in]a4dummy argument
[in]a5dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(5, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'))
call mtd%invoke()

Remarks

Definition at line 692 of file Method.f90.

◆ invoke_a6()

subroutine invoke_a6 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2,
class(*), intent(in) a3,
class(*), intent(in) a4,
class(*), intent(in) a5,
class(*), intent(in) a6 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument
[in]a3dummy argument
[in]a4dummy argument
[in]a5dummy argument
[in]a6dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(6, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'), arg(a6, 'a6'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'), arg(a6, 'a6'))
call mtd%invoke()

Remarks

Definition at line 749 of file Method.f90.

◆ invoke_a7()

subroutine invoke_a7 ( class(method), intent(inout) this,
class(*), intent(in) a1,
class(*), intent(in) a2,
class(*), intent(in) a3,
class(*), intent(in) a4,
class(*), intent(in) a5,
class(*), intent(in) a6,
class(*), intent(in) a7 )
private

Bound procedure to invoke a method.

Parameters
[in]thisThe type bound to the method
[in]a1dummy argument
[in]a2dummy argument
[in]a3dummy argument
[in]a4dummy argument
[in]a5dummy argument
[in]a6dummy argument
[in]a7dummy argument

Examples

The first example demonstrate how to invoke the method by passing the arguments to the invoke procedure.

type(method) :: mtd
mtd = method(7, f)
call mtd%invoke(arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'), arg(a6, 'a6'), arg(a7, 'a7'))

Alternatively, on can also set the arguments directly from the method constructor.

type(method) :: mtd
mtd = method(f, arg(a1, 'a1'), arg(a2, 'a2'), arg(a3, 'a3'), &
arg(a4, 'a4'), arg(a5, 'a5'), arg(a6, 'a6'), arg(a7, 'a7'))
call mtd%invoke()

Remarks

Definition at line 809 of file Method.f90.

◆ method_assign_method()

subroutine method_assign_method ( class(method), intent(inout) lhs,
type(method), intent(in) rhs )
private

Assignment overloading. Assign a method to another method.

Parameters
[in,out]lhsThe target method
[in]rhsThe source method

Remarks

Definition at line 844 of file Method.f90.