Synopsis
This package provides R with access to Abseil header files.
This package is a direct import of Abseil libraries.
It can be used via the LinkingTo:
field in the DESCRIPTION
field of an R package — and the R package infrastructure tools will then know how to set include flags correctly on all architectures supported by R.
Installation
# Install from CRAN
install.packages("abseil")
Development version
# Development version from r-universe with CRAN version as a fallback
install.packages(
"abseil",
repos = c("https://doccstat.r-universe.dev", "https://cloud.r-project.org")
)
## install.packages("pak")
pak::pak("doccstat/abseil-r")
## install.packages("devtools")
devtools::install_github("doccstat/abseil-r")
Example
Directly usage in R
Rcpp::cppFunction(r"{
#include "absl/strings/str_join.h"
std::string joinString() {
std::vector<std::string> v = {"foo","bar","baz"};
return absl::StrJoin(v, "-");
}
}", depends = "abseil")
joinString()
#> [1] "foo-bar-baz"
Usage in Rcpp package
#include <Rcpp.h>
#include "absl/strings/str_join.h"
//' @export
// [[Rcpp::export]]
std::string joinString() {
std::vector<std::string> v = {"foo","bar","baz"};
return absl::StrJoin(v, "-");
}
Bare minimum R package using the abseil
package can be found at doccstat/abseil-r-example.
Contact us
For bugs related to Abseil logistics, please report the issue to the official Abseil GitHub Repo.
- File a ticket at GitHub Issues.
- Contact the authors specified in DESCRIPTION.