40 #include "../my_config.h"
67 #define TOOLS_SI_SUFFIX 1000
68 #define TOOLS_BIN_SUFFIX 1024
177 extern void tools_split_path_basename(
const std::string &all, std::string & chemin, std::string & base, memory_pool *pool =
nullptr);
189 const std::string &input,
190 const std::string & output,
193 memory_pool *pool =
nullptr);
224 extern std::string tools_uint2str(U_I x);
271 extern void tools_system(user_interaction & dialog,
const std::vector<std::string> & argvector);
282 const std::string & dar_cmd,
283 const std::vector<std::string> & argvpipe,
284 memory_pool *pool =
nullptr);
304 const std::vector<std::string> & x);
311 std::vector<std::string> operator + (std::vector<std::string> a, std::vector<std::string> b);
332 template <
class T> std::vector<T>
operator +=(std::vector<T> & a,
const std::vector<T> & b)
358 const std::string & extension,
359 memory_pool *pool =
nullptr);
379 extern bool tools_look_for(
const char *argument, S_I argc,
char *
const argv[]);
389 extern void tools_noexcept_make_date(
const std::string & chem,
bool symlink,
const datetime & last_acc,
const datetime & last_mod,
const datetime & birth);
399 extern void tools_make_date(
const std::string & chemin,
bool symlink,
const datetime & access,
const datetime & modif,
const datetime & birth);
414 extern void tools_to_upper(
const std::string & r, std::string & uppered);
417 extern void tools_to_wupper(std::wstring & r);
455 extern std::string
tools_printf(
const char *format, ...);
467 extern std::string
tools_vprintf(
const char *format, va_list ap);
485 extern void tools_unlink_file_mask_regex(user_interaction & dialog,
const std::string & c_chemin,
const std::string & file_mask,
bool info_details);
501 const std::string & basename,
502 const std::string & extension,
504 bool allow_overwriting,
505 bool warn_overwriting,
623 const std::map<char, std::string> & corres);
638 const std::string & path,
639 const std::string & basename,
640 const std::string & num,
641 const std::string & padded_num,
642 const std::string & ext,
643 const std::string & context);
651 const std::string & cmd_line);
665 const std::string & hook,
666 const std::string & path,
667 const std::string & basename,
668 const std::string & num,
669 const std::string & padded_num,
670 const std::string & ext,
671 const std::string & context);
680 const std::string & relative_part);
738 extern void tools_set_ownership(S_I filedesc,
const std::string & slice_user,
const std::string & slice_group);
746 extern void tools_memxor(
void *dest,
const void *src, U_I n);
754 extern tlv_list
tools_string2tlv_list(user_interaction & dialog,
const U_16 & type,
const std::vector<std::string> & data);
788 throw Erange(
"tools_number_decoupe_in_big_endian",
"base must be strictly positive");
792 ret.push_back(number % base);
837 extern std::string tools_gpgme_strerror_r(gpgme_error_t err);
842 extern std::wstring tools_string_to_wstring(
const std::string & val);
846 extern std::string tools_wstring_to_string(
const std::wstring & val);
853 extern std::vector<std::string>
tools_substract_from_vector(
const std::vector<std::string> & a,
const std::vector<std::string> & b);
874 extern void tools_secu_string_show(user_interaction & dialog,
const std::string & msg,
const secu_string & key);
876 template <
class T> T tools_max(T a, T b) {
return a > b ? a : b; }
877 template <
class T> T tools_min(T a, T b) {
return a > b ? b : a; }
are defined here basic integer types that tend to be portable
class memory_pool allocates and recycles blocks of memory for better performances it is expected to b...
class generic_file is defined here as well as class fichierthe generic_file interface is widely used ...
here is the definition of the path classthe path class handle path and provide several operation on t...
defines the implementation of pipe under the generic_file interface.mainly used between zapette and s...
switch module to limitint (32 ou 64 bits integers) or infinint
exception used to signal range error
this file contains the definition of class datetime that stores unix times in a portable way ...
List of Generic Type Length Value data structures.
libdar namespace encapsulate all libdar symbols