useDynLib(stringmagic, .registration = TRUE)

#
# string_*
#

export(string_ops, string_is, string_any, string_all, string_which, string_get, 
       string_clean, string_split2df, string_split2dt, string_fill, string_vec, 
       string_replace, string_extract, string_split)

# ... aliases; the rule is underscore before vowels unless long word follows
export(stops, stis, stany, stall, stextract, stwhich, stget, stclean, 
       stvec, streplace, stsplit)
       
export(string_ops_alias, string_vec_alias, string_clean_alias)

export(paste_conditional)

export(parse_regex_pattern)

#
# string_magic
#

export(string_magic, .string_magic)
export(string_magic_register_fun, string_magic_register_ops)
export(string_magic_alias)

export(cat_magic, cat_magic_alias)
export(message_magic, message_magic_alias)

export(timer_magic)

# ... aliases
export(sma, catma, mema)

#
# utilities
#

export(get_interpolated_expr, get_interpolated_vars)

#
# imports
#

importFrom(Rcpp, evalCpp)

importFrom("stats", terms)

importFrom("utils", "as.roman", "capture.output", "head", "tail")
