stdlib_optval#

optval - fallback value for optional arguments#

Status#

Experimental

Description#

Returns x if it is present, otherwise default.

This function is intended to be called in a procedure with one or more optional arguments, in order to conveniently fall back to a default value if an optional argument is not present.

Syntax#

result = optval (x, default)

Arguments#

x: Shall be of type integer, real, complex, or logical, or a scalar of type character.

default: Shall have the same type, kind, and rank as x.

Return value#

If x is present, the result is x, otherwise the result is default.

Example#

program example_optval
  use stdlib_optval, only: optval
  implicit none
  print *, root(64.0)
! 8.0
  print *, root(64.0, 3)
! 4.0
contains
  real function root(x, n)
    real, intent(in) :: x
    integer, intent(in), optional :: n
    root = x**(1.0/optval(n, 2))
  end function root
end program example_optval