The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Title: Vector Bitwise Operations
Version: 1.1.2
Description: A tool for fast, efficient bitwise operations along the elements within a vector. Provides such functionality for AND, OR and XOR, as well as infix operators for all of the binary bitwise operations.
License: MIT + file LICENSE
Suggests: spelling, testthat (≥ 3.0.0)
Config/testthat/edition: 3
Encoding: UTF-8
Language: en-US
RoxygenNote: 7.2.3
NeedsCompilation: yes
Packaged: 2024-01-08 07:33:50 UTC; yakumo
Author: Samuel Sapire [aut, cre, cph]
Maintainer: Samuel Sapire <sapires@protonmail.com>
Repository: CRAN
Date/Publication: 2024-01-08 16:50:02 UTC

vectorbitops: Vector Bitwise Operations

Description

A tool for fast, efficient bitwise operations along the elements within a vector. Provides such functionality for AND, OR and XOR, as well as infix operators for all of the binary bitwise operations.

Author(s)

Maintainer: Samuel Sapire sapires@protonmail.com [copyright holder]


Infix operators for bitwise operations.

Description

Basic infix wrapper around the base::bitw_OP_ operations.

Usage

a %|% b

a %&% b

a %^% b

a %<<% n

a %>>% n

Arguments

a, b

Integer vectors. Numerics are coerced to integers.

n

Non-negative integer vector of values up to 31.

Value

An integer vector of length of the longer of the arguments, or zero if one of the arguments is zero-length. NA input makes NA output.

⁠%|%⁠: A vector of pairwise ORed values.

⁠%&%⁠: A vector of pairwise ANDed values.

⁠%^%⁠: A vector of pairwise XORed values.

⁠%<<%⁠: A vector of the values on the LHS pairwise left-shifted by the RHS value.

⁠%>>%⁠: A vector of the values on the LHS pairwise right-shifted by the RHS value.

Examples

1 %|% 2
1 %&% 2
1 %^% 2
1 %<<% 2
8 %>>% 2

Bitwise Operations along a Vector

Description

Functions to apply the same bitwise operation sequentially down a vector of integers. A fast way to AND or OR everything together when a single value is required.

Usage

bit_vector_AND(vec)

bit_vector_OR(vec)

bit_vector_XOR(vec)

Arguments

vec

A vector of integers. Numeric vectors will be coerced to int.

Value

A single integer, the result of applying the operation in question along the vector. Input that cannot be coerced to int returns NA. An empty vector returns 0.

bit_vector_AND: A single integer, the result of ANDing each entry in the input vector together.

bit_vector_OR: A single integer, the result of ORing each entry in the input vector together.

bit_vector_XOR: A single integer, the result of XORing each entry in the input vector together.

Examples

bit_vector_AND(c(1,3,5,7,9))
bit_vector_OR(c(1,2,4,8,16))
bit_vector_XOR(c(1,2,3,4,5))

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.