// Generated by using Rcpp::compileAttributes() -> do not edit by hand
// Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393

#include "openxlsx2_types.h"
#include <Rcpp.h>

using namespace Rcpp;

#ifdef RCPP_USE_GLOBAL_ROSTREAM
Rcpp::Rostream<true>&  Rcpp::Rcout = Rcpp::Rcpp_cout_get();
Rcpp::Rostream<false>& Rcpp::Rcerr = Rcpp::Rcpp_cerr_get();
#endif

// date_to_unix
Rcpp::CharacterVector date_to_unix(Rcpp::CharacterVector x, std::string origin, bool datetime);
RcppExport SEXP _openxlsx2_date_to_unix(SEXP xSEXP, SEXP originSEXP, SEXP datetimeSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type x(xSEXP);
    Rcpp::traits::input_parameter< std::string >::type origin(originSEXP);
    Rcpp::traits::input_parameter< bool >::type datetime(datetimeSEXP);
    rcpp_result_gen = Rcpp::wrap(date_to_unix(x, origin, datetime));
    return rcpp_result_gen;
END_RCPP
}
// to_long
bool to_long(std::string path);
RcppExport SEXP _openxlsx2_to_long(SEXP pathSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type path(pathSEXP);
    rcpp_result_gen = Rcpp::wrap(to_long(path));
    return rcpp_result_gen;
END_RCPP
}
// openxlsx2_type
SEXP openxlsx2_type(SEXP x);
RcppExport SEXP _openxlsx2_openxlsx2_type(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(openxlsx2_type(x));
    return rcpp_result_gen;
END_RCPP
}
// col_to_int
Rcpp::IntegerVector col_to_int(Rcpp::CharacterVector x);
RcppExport SEXP _openxlsx2_col_to_int(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(col_to_int(x));
    return rcpp_result_gen;
END_RCPP
}
// ox_int_to_col
Rcpp::CharacterVector ox_int_to_col(Rcpp::NumericVector x);
RcppExport SEXP _openxlsx2_ox_int_to_col(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::NumericVector >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(ox_int_to_col(x));
    return rcpp_result_gen;
END_RCPP
}
// rbindlist
SEXP rbindlist(Rcpp::List x);
RcppExport SEXP _openxlsx2_rbindlist(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::List >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(rbindlist(x));
    return rcpp_result_gen;
END_RCPP
}
// copy
SEXP copy(SEXP x);
RcppExport SEXP _openxlsx2_copy(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< SEXP >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(copy(x));
    return rcpp_result_gen;
END_RCPP
}
// needed_cells
std::vector<std::string> needed_cells(const std::string& range, bool all);
RcppExport SEXP _openxlsx2_needed_cells(SEXP rangeSEXP, SEXP allSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< const std::string& >::type range(rangeSEXP);
    Rcpp::traits::input_parameter< bool >::type all(allSEXP);
    rcpp_result_gen = Rcpp::wrap(needed_cells(range, all));
    return rcpp_result_gen;
END_RCPP
}
// get_dims
SEXP get_dims(Rcpp::CharacterVector dims, bool check);
RcppExport SEXP _openxlsx2_get_dims(SEXP dimsSEXP, SEXP checkSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type dims(dimsSEXP);
    Rcpp::traits::input_parameter< bool >::type check(checkSEXP);
    rcpp_result_gen = Rcpp::wrap(get_dims(dims, check));
    return rcpp_result_gen;
END_RCPP
}
// dims_to_row_col_fill
SEXP dims_to_row_col_fill(Rcpp::CharacterVector dims, bool fills);
RcppExport SEXP _openxlsx2_dims_to_row_col_fill(SEXP dimsSEXP, SEXP fillsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type dims(dimsSEXP);
    Rcpp::traits::input_parameter< bool >::type fills(fillsSEXP);
    rcpp_result_gen = Rcpp::wrap(dims_to_row_col_fill(dims, fills));
    return rcpp_result_gen;
END_RCPP
}
// dims_to_df
SEXP dims_to_df(Rcpp::IntegerVector rows, Rcpp::CharacterVector cols, Rcpp::Nullable<Rcpp::CharacterVector> filled, bool fill, Rcpp::Nullable<Rcpp::IntegerVector> fcols);
RcppExport SEXP _openxlsx2_dims_to_df(SEXP rowsSEXP, SEXP colsSEXP, SEXP filledSEXP, SEXP fillSEXP, SEXP fcolsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::IntegerVector >::type rows(rowsSEXP);
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type cols(colsSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::CharacterVector> >::type filled(filledSEXP);
    Rcpp::traits::input_parameter< bool >::type fill(fillSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::IntegerVector> >::type fcols(fcolsSEXP);
    rcpp_result_gen = Rcpp::wrap(dims_to_df(rows, cols, filled, fill, fcols));
    return rcpp_result_gen;
END_RCPP
}
// long_to_wide
void long_to_wide(Rcpp::DataFrame z, Rcpp::DataFrame tt, Rcpp::DataFrame zz);
RcppExport SEXP _openxlsx2_long_to_wide(SEXP zSEXP, SEXP ttSEXP, SEXP zzSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type z(zSEXP);
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type tt(ttSEXP);
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type zz(zzSEXP);
    long_to_wide(z, tt, zz);
    return R_NilValue;
END_RCPP
}
// is_charnum
Rcpp::LogicalVector is_charnum(Rcpp::CharacterVector x);
RcppExport SEXP _openxlsx2_is_charnum(SEXP xSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type x(xSEXP);
    rcpp_result_gen = Rcpp::wrap(is_charnum(x));
    return rcpp_result_gen;
END_RCPP
}
// wide_to_long
void wide_to_long(Rcpp::DataFrame z, std::vector<int32_t> vtyps, Rcpp::DataFrame zz, bool ColNames, int32_t start_col, int32_t start_row, Rcpp::Nullable<Rcpp::CharacterVector> refed, int32_t string_nums, bool na_null, bool na_missing, std::string na_strings, bool inline_strings, std::string c_cm, std::vector<std::string> dims);
RcppExport SEXP _openxlsx2_wide_to_long(SEXP zSEXP, SEXP vtypsSEXP, SEXP zzSEXP, SEXP ColNamesSEXP, SEXP start_colSEXP, SEXP start_rowSEXP, SEXP refedSEXP, SEXP string_numsSEXP, SEXP na_nullSEXP, SEXP na_missingSEXP, SEXP na_stringsSEXP, SEXP inline_stringsSEXP, SEXP c_cmSEXP, SEXP dimsSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type z(zSEXP);
    Rcpp::traits::input_parameter< std::vector<int32_t> >::type vtyps(vtypsSEXP);
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type zz(zzSEXP);
    Rcpp::traits::input_parameter< bool >::type ColNames(ColNamesSEXP);
    Rcpp::traits::input_parameter< int32_t >::type start_col(start_colSEXP);
    Rcpp::traits::input_parameter< int32_t >::type start_row(start_rowSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::CharacterVector> >::type refed(refedSEXP);
    Rcpp::traits::input_parameter< int32_t >::type string_nums(string_numsSEXP);
    Rcpp::traits::input_parameter< bool >::type na_null(na_nullSEXP);
    Rcpp::traits::input_parameter< bool >::type na_missing(na_missingSEXP);
    Rcpp::traits::input_parameter< std::string >::type na_strings(na_stringsSEXP);
    Rcpp::traits::input_parameter< bool >::type inline_strings(inline_stringsSEXP);
    Rcpp::traits::input_parameter< std::string >::type c_cm(c_cmSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type dims(dimsSEXP);
    wide_to_long(z, vtyps, zz, ColNames, start_col, start_row, refed, string_nums, na_null, na_missing, na_strings, inline_strings, c_cm, dims);
    return R_NilValue;
END_RCPP
}
// create_char_dataframe
Rcpp::DataFrame create_char_dataframe(Rcpp::CharacterVector colnames, R_xlen_t n);
RcppExport SEXP _openxlsx2_create_char_dataframe(SEXP colnamesSEXP, SEXP nSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type colnames(colnamesSEXP);
    Rcpp::traits::input_parameter< R_xlen_t >::type n(nSEXP);
    rcpp_result_gen = Rcpp::wrap(create_char_dataframe(colnames, n));
    return rcpp_result_gen;
END_RCPP
}
// create_int_dataframe
Rcpp::DataFrame create_int_dataframe(const Rcpp::DataFrame& char_df);
RcppExport SEXP _openxlsx2_create_int_dataframe(SEXP char_dfSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< const Rcpp::DataFrame& >::type char_df(char_dfSEXP);
    rcpp_result_gen = Rcpp::wrap(create_int_dataframe(char_df));
    return rcpp_result_gen;
END_RCPP
}
// read_xml2df
Rcpp::DataFrame read_xml2df(XPtrXML xml, std::string vec_name, std::vector<std::string> vec_attrs, std::vector<std::string> vec_chlds);
RcppExport SEXP _openxlsx2_read_xml2df(SEXP xmlSEXP, SEXP vec_nameSEXP, SEXP vec_attrsSEXP, SEXP vec_chldsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml(xmlSEXP);
    Rcpp::traits::input_parameter< std::string >::type vec_name(vec_nameSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type vec_attrs(vec_attrsSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type vec_chlds(vec_chldsSEXP);
    rcpp_result_gen = Rcpp::wrap(read_xml2df(xml, vec_name, vec_attrs, vec_chlds));
    return rcpp_result_gen;
END_RCPP
}
// write_df2xml
Rcpp::CharacterVector write_df2xml(Rcpp::DataFrame df, std::string vec_name, std::vector<std::string> vec_attrs, std::vector<std::string> vec_chlds);
RcppExport SEXP _openxlsx2_write_df2xml(SEXP dfSEXP, SEXP vec_nameSEXP, SEXP vec_attrsSEXP, SEXP vec_chldsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df(dfSEXP);
    Rcpp::traits::input_parameter< std::string >::type vec_name(vec_nameSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type vec_attrs(vec_attrsSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type vec_chlds(vec_chldsSEXP);
    rcpp_result_gen = Rcpp::wrap(write_df2xml(df, vec_name, vec_attrs, vec_chlds));
    return rcpp_result_gen;
END_RCPP
}
// df_to_xml
Rcpp::CharacterVector df_to_xml(std::string name, Rcpp::DataFrame df_col);
RcppExport SEXP _openxlsx2_df_to_xml(SEXP nameSEXP, SEXP df_colSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type name(nameSEXP);
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_col(df_colSEXP);
    rcpp_result_gen = Rcpp::wrap(df_to_xml(name, df_col));
    return rcpp_result_gen;
END_RCPP
}
// cdigit
SEXP cdigit(Rcpp::CharacterVector x, bool as_integer);
RcppExport SEXP _openxlsx2_cdigit(SEXP xSEXP, SEXP as_integerSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type x(xSEXP);
    Rcpp::traits::input_parameter< bool >::type as_integer(as_integerSEXP);
    rcpp_result_gen = Rcpp::wrap(cdigit(x, as_integer));
    return rcpp_result_gen;
END_RCPP
}
// col_to_df
Rcpp::DataFrame col_to_df(XPtrXML doc);
RcppExport SEXP _openxlsx2_col_to_df(SEXP docSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    rcpp_result_gen = Rcpp::wrap(col_to_df(doc));
    return rcpp_result_gen;
END_RCPP
}
// loadvals
void loadvals(Rcpp::Environment sheet_data, XPtrXML doc);
RcppExport SEXP _openxlsx2_loadvals(SEXP sheet_dataSEXP, SEXP docSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::Environment >::type sheet_data(sheet_dataSEXP);
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    loadvals(sheet_data, doc);
    return R_NilValue;
END_RCPP
}
// readXML
SEXP readXML(std::string path, bool isfile, bool escapes, bool declaration, bool whitespace, int comments, bool empty_tags, bool skip_control, bool pointer);
RcppExport SEXP _openxlsx2_readXML(SEXP pathSEXP, SEXP isfileSEXP, SEXP escapesSEXP, SEXP declarationSEXP, SEXP whitespaceSEXP, SEXP commentsSEXP, SEXP empty_tagsSEXP, SEXP skip_controlSEXP, SEXP pointerSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type path(pathSEXP);
    Rcpp::traits::input_parameter< bool >::type isfile(isfileSEXP);
    Rcpp::traits::input_parameter< bool >::type escapes(escapesSEXP);
    Rcpp::traits::input_parameter< bool >::type declaration(declarationSEXP);
    Rcpp::traits::input_parameter< bool >::type whitespace(whitespaceSEXP);
    Rcpp::traits::input_parameter< int >::type comments(commentsSEXP);
    Rcpp::traits::input_parameter< bool >::type empty_tags(empty_tagsSEXP);
    Rcpp::traits::input_parameter< bool >::type skip_control(skip_controlSEXP);
    Rcpp::traits::input_parameter< bool >::type pointer(pointerSEXP);
    rcpp_result_gen = Rcpp::wrap(readXML(path, isfile, escapes, declaration, whitespace, comments, empty_tags, skip_control, pointer));
    return rcpp_result_gen;
END_RCPP
}
// is_xml
Rcpp::LogicalVector is_xml(std::string str);
RcppExport SEXP _openxlsx2_is_xml(SEXP strSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type str(strSEXP);
    rcpp_result_gen = Rcpp::wrap(is_xml(str));
    return rcpp_result_gen;
END_RCPP
}
// getXMLXPtrNamePath
SEXP getXMLXPtrNamePath(XPtrXML doc, std::vector<std::string> path);
RcppExport SEXP _openxlsx2_getXMLXPtrNamePath(SEXP docSEXP, SEXP pathSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    rcpp_result_gen = Rcpp::wrap(getXMLXPtrNamePath(doc, path));
    return rcpp_result_gen;
END_RCPP
}
// getXMLXPtrPath
SEXP getXMLXPtrPath(XPtrXML doc, std::vector<std::string> path);
RcppExport SEXP _openxlsx2_getXMLXPtrPath(SEXP docSEXP, SEXP pathSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    rcpp_result_gen = Rcpp::wrap(getXMLXPtrPath(doc, path));
    return rcpp_result_gen;
END_RCPP
}
// getXMLXPtrValPath
SEXP getXMLXPtrValPath(XPtrXML doc, std::vector<std::string> path);
RcppExport SEXP _openxlsx2_getXMLXPtrValPath(SEXP docSEXP, SEXP pathSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    rcpp_result_gen = Rcpp::wrap(getXMLXPtrValPath(doc, path));
    return rcpp_result_gen;
END_RCPP
}
// getXMLXPtrAttrPath
SEXP getXMLXPtrAttrPath(XPtrXML doc, std::vector<std::string> path);
RcppExport SEXP _openxlsx2_getXMLXPtrAttrPath(SEXP docSEXP, SEXP pathSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    rcpp_result_gen = Rcpp::wrap(getXMLXPtrAttrPath(doc, path));
    return rcpp_result_gen;
END_RCPP
}
// printXPtr
SEXP printXPtr(XPtrXML doc, std::string indent, bool raw, bool attr_indent);
RcppExport SEXP _openxlsx2_printXPtr(SEXP docSEXP, SEXP indentSEXP, SEXP rawSEXP, SEXP attr_indentSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::string >::type indent(indentSEXP);
    Rcpp::traits::input_parameter< bool >::type raw(rawSEXP);
    Rcpp::traits::input_parameter< bool >::type attr_indent(attr_indentSEXP);
    rcpp_result_gen = Rcpp::wrap(printXPtr(doc, indent, raw, attr_indent));
    return rcpp_result_gen;
END_RCPP
}
// write_xml_file
XPtrXML write_xml_file(std::string xml_content, bool escapes);
RcppExport SEXP _openxlsx2_write_xml_file(SEXP xml_contentSEXP, SEXP escapesSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type xml_content(xml_contentSEXP);
    Rcpp::traits::input_parameter< bool >::type escapes(escapesSEXP);
    rcpp_result_gen = Rcpp::wrap(write_xml_file(xml_content, escapes));
    return rcpp_result_gen;
END_RCPP
}
// xml_attr_mod
Rcpp::CharacterVector xml_attr_mod(std::string xml_content, Rcpp::CharacterVector xml_attributes, Rcpp::Nullable<std::vector<std::string>> path, bool escapes, bool declaration, bool remove_empty_attr);
RcppExport SEXP _openxlsx2_xml_attr_mod(SEXP xml_contentSEXP, SEXP xml_attributesSEXP, SEXP pathSEXP, SEXP escapesSEXP, SEXP declarationSEXP, SEXP remove_empty_attrSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type xml_content(xml_contentSEXP);
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type xml_attributes(xml_attributesSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<std::vector<std::string>> >::type path(pathSEXP);
    Rcpp::traits::input_parameter< bool >::type escapes(escapesSEXP);
    Rcpp::traits::input_parameter< bool >::type declaration(declarationSEXP);
    Rcpp::traits::input_parameter< bool >::type remove_empty_attr(remove_empty_attrSEXP);
    rcpp_result_gen = Rcpp::wrap(xml_attr_mod(xml_content, xml_attributes, path, escapes, declaration, remove_empty_attr));
    return rcpp_result_gen;
END_RCPP
}
// xml_node_create
Rcpp::CharacterVector xml_node_create(std::string xml_name, Rcpp::Nullable<Rcpp::CharacterVector> xml_children, Rcpp::Nullable<Rcpp::CharacterVector> xml_attributes, bool escapes, bool declaration);
RcppExport SEXP _openxlsx2_xml_node_create(SEXP xml_nameSEXP, SEXP xml_childrenSEXP, SEXP xml_attributesSEXP, SEXP escapesSEXP, SEXP declarationSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type xml_name(xml_nameSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::CharacterVector> >::type xml_children(xml_childrenSEXP);
    Rcpp::traits::input_parameter< Rcpp::Nullable<Rcpp::CharacterVector> >::type xml_attributes(xml_attributesSEXP);
    Rcpp::traits::input_parameter< bool >::type escapes(escapesSEXP);
    Rcpp::traits::input_parameter< bool >::type declaration(declarationSEXP);
    rcpp_result_gen = Rcpp::wrap(xml_node_create(xml_name, xml_children, xml_attributes, escapes, declaration));
    return rcpp_result_gen;
END_RCPP
}
// xml_append_child_path
SEXP xml_append_child_path(XPtrXML node, XPtrXML child, std::vector<std::string> path, bool pointer);
RcppExport SEXP _openxlsx2_xml_append_child_path(SEXP nodeSEXP, SEXP childSEXP, SEXP pathSEXP, SEXP pointerSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type node(nodeSEXP);
    Rcpp::traits::input_parameter< XPtrXML >::type child(childSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    Rcpp::traits::input_parameter< bool >::type pointer(pointerSEXP);
    rcpp_result_gen = Rcpp::wrap(xml_append_child_path(node, child, path, pointer));
    return rcpp_result_gen;
END_RCPP
}
// xml_remove_child_path
SEXP xml_remove_child_path(XPtrXML node, std::string child, std::vector<std::string> path, int32_t which, bool pointer);
RcppExport SEXP _openxlsx2_xml_remove_child_path(SEXP nodeSEXP, SEXP childSEXP, SEXP pathSEXP, SEXP whichSEXP, SEXP pointerSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type node(nodeSEXP);
    Rcpp::traits::input_parameter< std::string >::type child(childSEXP);
    Rcpp::traits::input_parameter< std::vector<std::string> >::type path(pathSEXP);
    Rcpp::traits::input_parameter< int32_t >::type which(whichSEXP);
    Rcpp::traits::input_parameter< bool >::type pointer(pointerSEXP);
    rcpp_result_gen = Rcpp::wrap(xml_remove_child_path(node, child, path, which, pointer));
    return rcpp_result_gen;
END_RCPP
}
// is_to_txt
SEXP is_to_txt(Rcpp::CharacterVector is_vec);
RcppExport SEXP _openxlsx2_is_to_txt(SEXP is_vecSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type is_vec(is_vecSEXP);
    rcpp_result_gen = Rcpp::wrap(is_to_txt(is_vec));
    return rcpp_result_gen;
END_RCPP
}
// si_to_txt
SEXP si_to_txt(Rcpp::CharacterVector si_vec);
RcppExport SEXP _openxlsx2_si_to_txt(SEXP si_vecSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::CharacterVector >::type si_vec(si_vecSEXP);
    rcpp_result_gen = Rcpp::wrap(si_to_txt(si_vec));
    return rcpp_result_gen;
END_RCPP
}
// txt_to_is
std::string txt_to_is(std::string text, bool no_escapes, bool raw, bool skip_control);
RcppExport SEXP _openxlsx2_txt_to_is(SEXP textSEXP, SEXP no_escapesSEXP, SEXP rawSEXP, SEXP skip_controlSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type text(textSEXP);
    Rcpp::traits::input_parameter< bool >::type no_escapes(no_escapesSEXP);
    Rcpp::traits::input_parameter< bool >::type raw(rawSEXP);
    Rcpp::traits::input_parameter< bool >::type skip_control(skip_controlSEXP);
    rcpp_result_gen = Rcpp::wrap(txt_to_is(text, no_escapes, raw, skip_control));
    return rcpp_result_gen;
END_RCPP
}
// txt_to_si
std::string txt_to_si(std::string text, bool no_escapes, bool raw, bool skip_control);
RcppExport SEXP _openxlsx2_txt_to_si(SEXP textSEXP, SEXP no_escapesSEXP, SEXP rawSEXP, SEXP skip_controlSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type text(textSEXP);
    Rcpp::traits::input_parameter< bool >::type no_escapes(no_escapesSEXP);
    Rcpp::traits::input_parameter< bool >::type raw(rawSEXP);
    Rcpp::traits::input_parameter< bool >::type skip_control(skip_controlSEXP);
    rcpp_result_gen = Rcpp::wrap(txt_to_si(text, no_escapes, raw, skip_control));
    return rcpp_result_gen;
END_RCPP
}
// read_xf
Rcpp::DataFrame read_xf(XPtrXML xml_doc_xf);
RcppExport SEXP _openxlsx2_read_xf(SEXP xml_doc_xfSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_xf(xml_doc_xfSEXP);
    rcpp_result_gen = Rcpp::wrap(read_xf(xml_doc_xf));
    return rcpp_result_gen;
END_RCPP
}
// write_xf
Rcpp::CharacterVector write_xf(Rcpp::DataFrame df_xf);
RcppExport SEXP _openxlsx2_write_xf(SEXP df_xfSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_xf(df_xfSEXP);
    rcpp_result_gen = Rcpp::wrap(write_xf(df_xf));
    return rcpp_result_gen;
END_RCPP
}
// read_font
Rcpp::DataFrame read_font(XPtrXML xml_doc_font);
RcppExport SEXP _openxlsx2_read_font(SEXP xml_doc_fontSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_font(xml_doc_fontSEXP);
    rcpp_result_gen = Rcpp::wrap(read_font(xml_doc_font));
    return rcpp_result_gen;
END_RCPP
}
// write_font
Rcpp::CharacterVector write_font(Rcpp::DataFrame df_font);
RcppExport SEXP _openxlsx2_write_font(SEXP df_fontSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_font(df_fontSEXP);
    rcpp_result_gen = Rcpp::wrap(write_font(df_font));
    return rcpp_result_gen;
END_RCPP
}
// read_numfmt
Rcpp::DataFrame read_numfmt(XPtrXML xml_doc_numfmt);
RcppExport SEXP _openxlsx2_read_numfmt(SEXP xml_doc_numfmtSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_numfmt(xml_doc_numfmtSEXP);
    rcpp_result_gen = Rcpp::wrap(read_numfmt(xml_doc_numfmt));
    return rcpp_result_gen;
END_RCPP
}
// write_numfmt
Rcpp::CharacterVector write_numfmt(Rcpp::DataFrame df_numfmt);
RcppExport SEXP _openxlsx2_write_numfmt(SEXP df_numfmtSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_numfmt(df_numfmtSEXP);
    rcpp_result_gen = Rcpp::wrap(write_numfmt(df_numfmt));
    return rcpp_result_gen;
END_RCPP
}
// read_border
Rcpp::DataFrame read_border(XPtrXML xml_doc_border);
RcppExport SEXP _openxlsx2_read_border(SEXP xml_doc_borderSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_border(xml_doc_borderSEXP);
    rcpp_result_gen = Rcpp::wrap(read_border(xml_doc_border));
    return rcpp_result_gen;
END_RCPP
}
// write_border
Rcpp::CharacterVector write_border(Rcpp::DataFrame df_border);
RcppExport SEXP _openxlsx2_write_border(SEXP df_borderSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_border(df_borderSEXP);
    rcpp_result_gen = Rcpp::wrap(write_border(df_border));
    return rcpp_result_gen;
END_RCPP
}
// read_fill
Rcpp::DataFrame read_fill(XPtrXML xml_doc_fill);
RcppExport SEXP _openxlsx2_read_fill(SEXP xml_doc_fillSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_fill(xml_doc_fillSEXP);
    rcpp_result_gen = Rcpp::wrap(read_fill(xml_doc_fill));
    return rcpp_result_gen;
END_RCPP
}
// write_fill
Rcpp::CharacterVector write_fill(Rcpp::DataFrame df_fill);
RcppExport SEXP _openxlsx2_write_fill(SEXP df_fillSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_fill(df_fillSEXP);
    rcpp_result_gen = Rcpp::wrap(write_fill(df_fill));
    return rcpp_result_gen;
END_RCPP
}
// read_cellStyle
Rcpp::DataFrame read_cellStyle(XPtrXML xml_doc_cellStyle);
RcppExport SEXP _openxlsx2_read_cellStyle(SEXP xml_doc_cellStyleSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_cellStyle(xml_doc_cellStyleSEXP);
    rcpp_result_gen = Rcpp::wrap(read_cellStyle(xml_doc_cellStyle));
    return rcpp_result_gen;
END_RCPP
}
// write_cellStyle
Rcpp::CharacterVector write_cellStyle(Rcpp::DataFrame df_cellstyle);
RcppExport SEXP _openxlsx2_write_cellStyle(SEXP df_cellstyleSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_cellstyle(df_cellstyleSEXP);
    rcpp_result_gen = Rcpp::wrap(write_cellStyle(df_cellstyle));
    return rcpp_result_gen;
END_RCPP
}
// read_tableStyle
Rcpp::DataFrame read_tableStyle(XPtrXML xml_doc_tableStyle);
RcppExport SEXP _openxlsx2_read_tableStyle(SEXP xml_doc_tableStyleSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_tableStyle(xml_doc_tableStyleSEXP);
    rcpp_result_gen = Rcpp::wrap(read_tableStyle(xml_doc_tableStyle));
    return rcpp_result_gen;
END_RCPP
}
// write_tableStyle
Rcpp::CharacterVector write_tableStyle(Rcpp::DataFrame df_tablestyle);
RcppExport SEXP _openxlsx2_write_tableStyle(SEXP df_tablestyleSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_tablestyle(df_tablestyleSEXP);
    rcpp_result_gen = Rcpp::wrap(write_tableStyle(df_tablestyle));
    return rcpp_result_gen;
END_RCPP
}
// read_dxf
Rcpp::DataFrame read_dxf(XPtrXML xml_doc_dxf);
RcppExport SEXP _openxlsx2_read_dxf(SEXP xml_doc_dxfSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_dxf(xml_doc_dxfSEXP);
    rcpp_result_gen = Rcpp::wrap(read_dxf(xml_doc_dxf));
    return rcpp_result_gen;
END_RCPP
}
// write_dxf
Rcpp::CharacterVector write_dxf(Rcpp::DataFrame df_dxf);
RcppExport SEXP _openxlsx2_write_dxf(SEXP df_dxfSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_dxf(df_dxfSEXP);
    rcpp_result_gen = Rcpp::wrap(write_dxf(df_dxf));
    return rcpp_result_gen;
END_RCPP
}
// read_colors
Rcpp::DataFrame read_colors(XPtrXML xml_doc_colors);
RcppExport SEXP _openxlsx2_read_colors(SEXP xml_doc_colorsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type xml_doc_colors(xml_doc_colorsSEXP);
    rcpp_result_gen = Rcpp::wrap(read_colors(xml_doc_colors));
    return rcpp_result_gen;
END_RCPP
}
// write_colors
Rcpp::CharacterVector write_colors(Rcpp::DataFrame df_colors);
RcppExport SEXP _openxlsx2_write_colors(SEXP df_colorsSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::DataFrame >::type df_colors(df_colorsSEXP);
    rcpp_result_gen = Rcpp::wrap(write_colors(df_colors));
    return rcpp_result_gen;
END_RCPP
}
// write_worksheet_slim
void write_worksheet_slim(Rcpp::Environment sheet_data, std::string prior, std::string post, std::string fl);
RcppExport SEXP _openxlsx2_write_worksheet_slim(SEXP sheet_dataSEXP, SEXP priorSEXP, SEXP postSEXP, SEXP flSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< Rcpp::Environment >::type sheet_data(sheet_dataSEXP);
    Rcpp::traits::input_parameter< std::string >::type prior(priorSEXP);
    Rcpp::traits::input_parameter< std::string >::type post(postSEXP);
    Rcpp::traits::input_parameter< std::string >::type fl(flSEXP);
    write_worksheet_slim(sheet_data, prior, post, fl);
    return R_NilValue;
END_RCPP
}
// write_worksheet
XPtrXML write_worksheet(std::string prior, std::string post, Rcpp::Environment sheet_data);
RcppExport SEXP _openxlsx2_write_worksheet(SEXP priorSEXP, SEXP postSEXP, SEXP sheet_dataSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type prior(priorSEXP);
    Rcpp::traits::input_parameter< std::string >::type post(postSEXP);
    Rcpp::traits::input_parameter< Rcpp::Environment >::type sheet_data(sheet_dataSEXP);
    rcpp_result_gen = Rcpp::wrap(write_worksheet(prior, post, sheet_data));
    return rcpp_result_gen;
END_RCPP
}
// write_xmlPtr
void write_xmlPtr(XPtrXML doc, std::string fl);
RcppExport SEXP _openxlsx2_write_xmlPtr(SEXP docSEXP, SEXP flSEXP) {
BEGIN_RCPP
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< XPtrXML >::type doc(docSEXP);
    Rcpp::traits::input_parameter< std::string >::type fl(flSEXP);
    write_xmlPtr(doc, fl);
    return R_NilValue;
END_RCPP
}
// styles_bin
int32_t styles_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_styles_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(styles_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// table_bin
int32_t table_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_table_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(table_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// comments_bin
int32_t comments_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_comments_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(comments_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// externalreferences_bin
int32_t externalreferences_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_externalreferences_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(externalreferences_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// sharedstrings_bin
int32_t sharedstrings_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_sharedstrings_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(sharedstrings_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// workbook_bin
int32_t workbook_bin(std::string filePath, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_workbook_bin(SEXP filePathSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(workbook_bin(filePath, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}
// worksheet_bin
int32_t worksheet_bin(std::string filePath, bool chartsheet, std::string outPath, bool debug);
RcppExport SEXP _openxlsx2_worksheet_bin(SEXP filePathSEXP, SEXP chartsheetSEXP, SEXP outPathSEXP, SEXP debugSEXP) {
BEGIN_RCPP
    Rcpp::RObject rcpp_result_gen;
    Rcpp::RNGScope rcpp_rngScope_gen;
    Rcpp::traits::input_parameter< std::string >::type filePath(filePathSEXP);
    Rcpp::traits::input_parameter< bool >::type chartsheet(chartsheetSEXP);
    Rcpp::traits::input_parameter< std::string >::type outPath(outPathSEXP);
    Rcpp::traits::input_parameter< bool >::type debug(debugSEXP);
    rcpp_result_gen = Rcpp::wrap(worksheet_bin(filePath, chartsheet, outPath, debug));
    return rcpp_result_gen;
END_RCPP
}

static const R_CallMethodDef CallEntries[] = {
    {"_openxlsx2_date_to_unix", (DL_FUNC) &_openxlsx2_date_to_unix, 3},
    {"_openxlsx2_to_long", (DL_FUNC) &_openxlsx2_to_long, 1},
    {"_openxlsx2_openxlsx2_type", (DL_FUNC) &_openxlsx2_openxlsx2_type, 1},
    {"_openxlsx2_col_to_int", (DL_FUNC) &_openxlsx2_col_to_int, 1},
    {"_openxlsx2_ox_int_to_col", (DL_FUNC) &_openxlsx2_ox_int_to_col, 1},
    {"_openxlsx2_rbindlist", (DL_FUNC) &_openxlsx2_rbindlist, 1},
    {"_openxlsx2_copy", (DL_FUNC) &_openxlsx2_copy, 1},
    {"_openxlsx2_needed_cells", (DL_FUNC) &_openxlsx2_needed_cells, 2},
    {"_openxlsx2_get_dims", (DL_FUNC) &_openxlsx2_get_dims, 2},
    {"_openxlsx2_dims_to_row_col_fill", (DL_FUNC) &_openxlsx2_dims_to_row_col_fill, 2},
    {"_openxlsx2_dims_to_df", (DL_FUNC) &_openxlsx2_dims_to_df, 5},
    {"_openxlsx2_long_to_wide", (DL_FUNC) &_openxlsx2_long_to_wide, 3},
    {"_openxlsx2_is_charnum", (DL_FUNC) &_openxlsx2_is_charnum, 1},
    {"_openxlsx2_wide_to_long", (DL_FUNC) &_openxlsx2_wide_to_long, 14},
    {"_openxlsx2_create_char_dataframe", (DL_FUNC) &_openxlsx2_create_char_dataframe, 2},
    {"_openxlsx2_create_int_dataframe", (DL_FUNC) &_openxlsx2_create_int_dataframe, 1},
    {"_openxlsx2_read_xml2df", (DL_FUNC) &_openxlsx2_read_xml2df, 4},
    {"_openxlsx2_write_df2xml", (DL_FUNC) &_openxlsx2_write_df2xml, 4},
    {"_openxlsx2_df_to_xml", (DL_FUNC) &_openxlsx2_df_to_xml, 2},
    {"_openxlsx2_cdigit", (DL_FUNC) &_openxlsx2_cdigit, 2},
    {"_openxlsx2_col_to_df", (DL_FUNC) &_openxlsx2_col_to_df, 1},
    {"_openxlsx2_loadvals", (DL_FUNC) &_openxlsx2_loadvals, 2},
    {"_openxlsx2_readXML", (DL_FUNC) &_openxlsx2_readXML, 9},
    {"_openxlsx2_is_xml", (DL_FUNC) &_openxlsx2_is_xml, 1},
    {"_openxlsx2_getXMLXPtrNamePath", (DL_FUNC) &_openxlsx2_getXMLXPtrNamePath, 2},
    {"_openxlsx2_getXMLXPtrPath", (DL_FUNC) &_openxlsx2_getXMLXPtrPath, 2},
    {"_openxlsx2_getXMLXPtrValPath", (DL_FUNC) &_openxlsx2_getXMLXPtrValPath, 2},
    {"_openxlsx2_getXMLXPtrAttrPath", (DL_FUNC) &_openxlsx2_getXMLXPtrAttrPath, 2},
    {"_openxlsx2_printXPtr", (DL_FUNC) &_openxlsx2_printXPtr, 4},
    {"_openxlsx2_write_xml_file", (DL_FUNC) &_openxlsx2_write_xml_file, 2},
    {"_openxlsx2_xml_attr_mod", (DL_FUNC) &_openxlsx2_xml_attr_mod, 6},
    {"_openxlsx2_xml_node_create", (DL_FUNC) &_openxlsx2_xml_node_create, 5},
    {"_openxlsx2_xml_append_child_path", (DL_FUNC) &_openxlsx2_xml_append_child_path, 4},
    {"_openxlsx2_xml_remove_child_path", (DL_FUNC) &_openxlsx2_xml_remove_child_path, 5},
    {"_openxlsx2_is_to_txt", (DL_FUNC) &_openxlsx2_is_to_txt, 1},
    {"_openxlsx2_si_to_txt", (DL_FUNC) &_openxlsx2_si_to_txt, 1},
    {"_openxlsx2_txt_to_is", (DL_FUNC) &_openxlsx2_txt_to_is, 4},
    {"_openxlsx2_txt_to_si", (DL_FUNC) &_openxlsx2_txt_to_si, 4},
    {"_openxlsx2_read_xf", (DL_FUNC) &_openxlsx2_read_xf, 1},
    {"_openxlsx2_write_xf", (DL_FUNC) &_openxlsx2_write_xf, 1},
    {"_openxlsx2_read_font", (DL_FUNC) &_openxlsx2_read_font, 1},
    {"_openxlsx2_write_font", (DL_FUNC) &_openxlsx2_write_font, 1},
    {"_openxlsx2_read_numfmt", (DL_FUNC) &_openxlsx2_read_numfmt, 1},
    {"_openxlsx2_write_numfmt", (DL_FUNC) &_openxlsx2_write_numfmt, 1},
    {"_openxlsx2_read_border", (DL_FUNC) &_openxlsx2_read_border, 1},
    {"_openxlsx2_write_border", (DL_FUNC) &_openxlsx2_write_border, 1},
    {"_openxlsx2_read_fill", (DL_FUNC) &_openxlsx2_read_fill, 1},
    {"_openxlsx2_write_fill", (DL_FUNC) &_openxlsx2_write_fill, 1},
    {"_openxlsx2_read_cellStyle", (DL_FUNC) &_openxlsx2_read_cellStyle, 1},
    {"_openxlsx2_write_cellStyle", (DL_FUNC) &_openxlsx2_write_cellStyle, 1},
    {"_openxlsx2_read_tableStyle", (DL_FUNC) &_openxlsx2_read_tableStyle, 1},
    {"_openxlsx2_write_tableStyle", (DL_FUNC) &_openxlsx2_write_tableStyle, 1},
    {"_openxlsx2_read_dxf", (DL_FUNC) &_openxlsx2_read_dxf, 1},
    {"_openxlsx2_write_dxf", (DL_FUNC) &_openxlsx2_write_dxf, 1},
    {"_openxlsx2_read_colors", (DL_FUNC) &_openxlsx2_read_colors, 1},
    {"_openxlsx2_write_colors", (DL_FUNC) &_openxlsx2_write_colors, 1},
    {"_openxlsx2_write_worksheet_slim", (DL_FUNC) &_openxlsx2_write_worksheet_slim, 4},
    {"_openxlsx2_write_worksheet", (DL_FUNC) &_openxlsx2_write_worksheet, 3},
    {"_openxlsx2_write_xmlPtr", (DL_FUNC) &_openxlsx2_write_xmlPtr, 2},
    {"_openxlsx2_styles_bin", (DL_FUNC) &_openxlsx2_styles_bin, 3},
    {"_openxlsx2_table_bin", (DL_FUNC) &_openxlsx2_table_bin, 3},
    {"_openxlsx2_comments_bin", (DL_FUNC) &_openxlsx2_comments_bin, 3},
    {"_openxlsx2_externalreferences_bin", (DL_FUNC) &_openxlsx2_externalreferences_bin, 3},
    {"_openxlsx2_sharedstrings_bin", (DL_FUNC) &_openxlsx2_sharedstrings_bin, 3},
    {"_openxlsx2_workbook_bin", (DL_FUNC) &_openxlsx2_workbook_bin, 3},
    {"_openxlsx2_worksheet_bin", (DL_FUNC) &_openxlsx2_worksheet_bin, 4},
    {NULL, NULL, 0}
};

RcppExport void R_init_openxlsx2(DllInfo *dll) {
    R_registerRoutines(dll, NULL, CallEntries, NULL, NULL);
    R_useDynamicSymbols(dll, FALSE);
}
