赋值(=) 接口

public interface assignment(=)

用于定义 bitset_large 的赋值。(规范)

示例

    program example_assignment
        use stdlib_bitsets
        logical(int8)  :: logical1(64) = .true.
        logical(int32), allocatable :: logical2(:)
        type(bitset_64) :: set0, set1
        set0 = logical1
        if ( set0 % bits() /= 64 ) then
            error stop procedure // &
                ' initialization with logical(int8) failed to set' // &
                ' the right size.'
        else if ( .not. set0 % all() ) then
            error stop procedure // ' initialization with' // &
                ' logical(int8) failed to set the right values.'
        else
            write(*,*) 'Initialization with logical(int8) succeeded.'
        end if
        set1 = set0
        if ( set1 == set0 ) &
            write(*,*) 'Initialization by assignment succeeded'
        logical2 = set1
        if ( all( logical2 ) ) then
            write(*,*) 'Initialization of logical(int32) succeeded.'
        end if
    end program example_assignment

子程序

private pure module subroutine assign_logint16_large(self, logical_vector)

用于定义从类型为 logical(int16) 的数组到 bitset_large 的赋值。

参数

类型 意图可选 属性 名称
type(bitset_large), intent(out) :: self
logical(kind=int16), intent(in) :: logical_vector(:)

private pure module subroutine assign_logint32_large(self, logical_vector)

用于定义从类型为 logical(int32) 的数组到 bitset_large 的赋值。

参数

类型 意图可选 属性 名称
type(bitset_large), intent(out) :: self
logical(kind=int32), intent(in) :: logical_vector(:)

private pure module subroutine assign_logint64_large(self, logical_vector)

用于定义从类型为 logical(int64) 的数组到 bitset_large 的赋值。

参数

类型 意图可选 属性 名称
type(bitset_large), intent(out) :: self
logical(kind=int64), intent(in) :: logical_vector(:)

private pure module subroutine assign_logint8_large(self, logical_vector)

用于定义从类型为 logical(int8) 的数组到 bitset_large 的赋值。

参数

类型 意图可选 属性 名称
type(bitset_large), intent(out) :: self
logical(kind=int8), intent(in) :: logical_vector(:)

private pure module subroutine logint16_assign_large(logical_vector, set)

用于定义从 bitset_large 到类型为 logical(int16) 的数组的赋值。

参数

类型 意图可选 属性 名称
logical(kind=int16), intent(out), allocatable :: logical_vector(:)
type(bitset_large), intent(in) :: set

private pure module subroutine logint32_assign_large(logical_vector, set)

用于定义从 bitset_large 到类型为 logical(int32) 的数组的赋值。

参数

类型 意图可选 属性 名称
logical(kind=int32), intent(out), allocatable :: logical_vector(:)
type(bitset_large), intent(in) :: set

private pure module subroutine logint64_assign_large(logical_vector, set)

用于定义从 bitset_large 到类型为 logical(int64) 的数组的赋值。

参数

类型 意图可选 属性 名称
logical(kind=int64), intent(out), allocatable :: logical_vector(:)
type(bitset_large), intent(in) :: set

private pure module subroutine logint8_assign_large(logical_vector, set)

用于定义从 bitset_large 到类型为 logical(int8) 的数组的赋值。

参数

类型 意图可选 属性 名称
logical(kind=int8), intent(out), allocatable :: logical_vector(:)
type(bitset_large), intent(in) :: set