as.logical.bit {bit}R Documentation

Coercion from bit, bitwhich and ri to logical, integer, double

Description

Coercing from bit to logical, integer, which.

Usage

## S3 method for class 'bit'
as.logical(x, ...)
## S3 method for class 'bitwhich'
as.logical(x, ...)
## S3 method for class 'ri'
as.logical(x, ...)
## S3 method for class 'bit'
as.integer(x, ...)
## S3 method for class 'bitwhich'
as.integer(x, ...)
## S3 method for class 'ri'
as.integer(x, ...)
## S3 method for class 'bit'
as.double(x, ...)
## S3 method for class 'bitwhich'
as.double(x, ...)
## S3 method for class 'ri'
as.double(x, ...)

Arguments

x

an object of class bit, bitwhich or ri

...

ignored

Details

Coercion from bit is quite fast because we use a double loop that fixes each word in a processor register.

Value

as.logical returns a vector of FALSE, TRUE, as.integer and as.double return a vector of 0,1.

Author(s)

Jens Oehlschlägel

See Also

as.bit, as.which, as.bitwhich, as.ff, as.hi

Examples

  x <- ri(2, 5, 10)
  y <- as.logical(x)
  y
  stopifnot(identical(y, as.logical(as.bit(x))))
  stopifnot(identical(y, as.logical(as.bitwhich(x))))

  y <- as.integer(x)
  y
  stopifnot(identical(y, as.integer(as.logical(x))))
  stopifnot(identical(y, as.integer(as.bit(x))))
  stopifnot(identical(y, as.integer(as.bitwhich(x))))

  y <- as.double(x)
  y
  stopifnot(identical(y, as.double(as.logical(x))))
  stopifnot(identical(y, as.double(as.bit(x))))
  stopifnot(identical(y, as.double(as.bitwhich(x))))

[Package bit version 1.1-14 Index]