Awali
Another Weighted Automata library
Data Structures | Functions
awali::dyn::loading Namespace Reference

Namespace containtaing facilities for on-the-fly compilation. More...

Data Structures

struct  file_loc_t
 

Functions

template<typename RET_T , typename... ARGS_T>
RET_T call0 (std::string const &name, std::string const &group, std::string const &stat_ctx, ARGS_T... args)
 
template<typename RET_T , typename ARG1_T , typename... ARGS_T>
RET_T call1 (std::string const &name, std::string const &group, ARG1_T arg1, ARGS_T... args)
 
HANDLER_EXTERN template automaton_t call1< automaton_t, automaton_t > (std::string const &, std::string const &, automaton_t)
 
HANDLER_EXTERN template automaton_t call1< automaton_t, automaton_t, automaton_t > (std::string const &, std::string const &, automaton_t, automaton_t)
 
HANDLER_EXTERN template automaton_t call1< automaton_t, automaton_t, bool > (std::string const &, std::string const &, automaton_t, bool)
 
HANDLER_EXTERN template bool call1< bool, automaton_t > (std::string const &, std::string const &, automaton_t)
 
HANDLER_EXTERN template bool call1< bool, automaton_t, automaton_t > (std::string const &, std::string const &, automaton_t, automaton_t)
 
HANDLER_EXTERN template void call1< void, automaton_t > (std::string const &, std::string const &, automaton_t)
 
template<typename RET_T , typename ARG2_T , typename ARG1_T , typename... ARGS_T>
RET_T call2 (std::string const &name, std::string const &group, ARG1_T arg1, ARG2_T arg2, ARGS_T... args)
 
HANDLER_EXTERN template bool call2< bool, automaton_t, automaton_t > (std::string const &, std::string const &, automaton_t, automaton_t)
 
template<typename RET_T , typename ARG1_T >
RET_T call_0_1 (std::string const &name, std::string const &group, std::string const &stat_ctx, ARG1_T other1, RET_T(*fct)(ARG1_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T call_0_2 (std::string const &name, std::string const &group, std::string const &stat_ctx, ARG1_T other1, ARG2_T other2, RET_T(*fct)(ARG1_T, ARG2_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T call_0_3 (std::string const &name, std::string const &group, std::string const &stat_ctx, ARG1_T other1, ARG2_T other2, ARG3_T other3, RET_T(*fct)(ARG1_T, ARG2_T, ARG3_T)=nullptr)
 
template<typename RET_T , typename ARG1_T >
RET_T call_1_0 (std::string const &name, std::string const &group, ARG1_T aut, RET_T(*fct)(ARG1_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T call_1_1 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T other1, RET_T(*fct)(ARG1_T, ARG2_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T call_1_2 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T other1, ARG3_T other2, RET_T(*fct)(ARG1_T, ARG2_T, ARG3_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T , typename ARG4_T >
RET_T call_1_3 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T other1, ARG3_T other2, ARG4_T other3, RET_T(*fct)(ARG1_T, ARG2_T, ARG3_T, ARG4_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T , typename ARG4_T , typename ARG5_T >
RET_T call_1_4 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T other1, ARG3_T other2, ARG4_T other3, ARG5_T other4, RET_T(*fct)(ARG1_T, ARG2_T, ARG3_T, ARG4_T, ARG5_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T call_2_0 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T aut2, RET_T(*fct)(ARG1_T, ARG2_T)=nullptr)
 
template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T call_2_1 (std::string const &name, std::string const &group, ARG1_T aut1, ARG2_T aut2, ARG3_T other1, RET_T(*fct)(ARG1_T, ARG2_T, ARG3_T)=nullptr)
 
template<typename TYPERET , typename ARG1 , typename ARG2 , TYPERET(*)(ARG1, ARG2) FCT>
TYPERET call_tdc2 (std::string const &name, std::string const &group, ARG1 aut1, ARG2 aut2)
 
std::string classname_of_ws (std::string w)
 
std::map< std::string, file_loc_texample_automata (bool recurse=false)
 
std::map< std::string, file_loc_texample_ratexps (bool recurse=false)
 
std::map< std::string, file_loc_texamples (std::vector< std::string > subdirs={"automata","ratexps"}, bool recurse=false)
 
std::string filename_of_ws (std::string w)
 
std::vector< std::string > get_compilation_directory (std::string const &lname)
 Returns the temporary compilation directory for the static module named lname. More...
 
const std::string & get_dot_binary ()
 Return the binary of dot. More...
 
std::vector< std::string > get_dyn_config_hh_directory ()
 Returns the directory where the config.hh file is located, stored by precedence. More...
 
std::vector< std::string > get_dynlib_directory ()
 Returns the directories where the dynamic library is located, sorted by precedence. More...
 
std::vector< std::string > get_examples_directory ()
 Returns the directories where the example automata are stored, sorted by precedence. More...
 
void * get_handler (const std::string &name, const std::string &group, const std::string &static_context)
 
void * get_handler (const std::string &name, const std::string &group, const std::string &static_context1, const std::string &static_context2)
 
void * get_handler (const std::string &name, const std::string &static_context)
 
std::vector< std::string > get_include_directory ()
 Returns the directories where the Awali headers are located. More...
 
std::vector< std::string > get_lib_directory ()
 Returns the directories where the static modules are located, sorted by precedence. More...
 
std::vector< std::string > get_sources_directory ()
 Returns the directories where the module sources are located, sorted by precedence. More...
 
std::string libname (const std::string &ctx, const std::string &name)
 
std::string libname (const std::string &ctx1, const std::string &ctx2, const std::string &name)
 
int make_awali_dir ()
 
std::string make_library (const std::string &name, const std::string &static_context, bool check_dependency=false)
 
std::string make_library (const std::string &name, const std::string &static_context1, const std::string &static_context2, bool check_dependency=false)
 
void rec_parse_context (const std::string &s, size_t &p, std::set< std::string > &weightsets, std::set< std::string > &labelsets, std::string &ws, std::string &ls)
 
void rec_parse_labelset (const std::string &s, size_t &p, std::set< std::string > &labelsets, std::string &ls)
 

Detailed Description

Namespace containtaing facilities for on-the-fly compilation.

Function Documentation

◆ call0()

template<typename RET_T , typename... ARGS_T>
RET_T awali::dyn::loading::call0 ( std::string const &  name,
std::string const &  group,
std::string const &  stat_ctx,
ARGS_T...  args 
)

◆ call1()

template<typename RET_T , typename ARG1_T , typename... ARGS_T>
RET_T awali::dyn::loading::call1 ( std::string const &  name,
std::string const &  group,
ARG1_T  arg1,
ARGS_T...  args 
)

◆ call1< automaton_t, automaton_t >()

HANDLER_EXTERN template automaton_t awali::dyn::loading::call1< automaton_t, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t   
)

◆ call1< automaton_t, automaton_t, automaton_t >()

HANDLER_EXTERN template automaton_t awali::dyn::loading::call1< automaton_t, automaton_t, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t  ,
automaton_t   
)

◆ call1< automaton_t, automaton_t, bool >()

HANDLER_EXTERN template automaton_t awali::dyn::loading::call1< automaton_t, automaton_t, bool > ( std::string const &  ,
std::string const &  ,
automaton_t  ,
bool   
)

◆ call1< bool, automaton_t >()

HANDLER_EXTERN template bool awali::dyn::loading::call1< bool, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t   
)

◆ call1< bool, automaton_t, automaton_t >()

HANDLER_EXTERN template bool awali::dyn::loading::call1< bool, automaton_t, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t  ,
automaton_t   
)

◆ call1< void, automaton_t >()

HANDLER_EXTERN template void awali::dyn::loading::call1< void, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t   
)

◆ call2()

template<typename RET_T , typename ARG2_T , typename ARG1_T , typename... ARGS_T>
RET_T awali::dyn::loading::call2 ( std::string const &  name,
std::string const &  group,
ARG1_T  arg1,
ARG2_T  arg2,
ARGS_T...  args 
)

◆ call2< bool, automaton_t, automaton_t >()

HANDLER_EXTERN template bool awali::dyn::loading::call2< bool, automaton_t, automaton_t > ( std::string const &  ,
std::string const &  ,
automaton_t  ,
automaton_t   
)

◆ call_0_1()

template<typename RET_T , typename ARG1_T >
RET_T awali::dyn::loading::call_0_1 ( std::string const &  name,
std::string const &  group,
std::string const &  stat_ctx,
ARG1_T  other1,
RET_T(*)(ARG1_T)  fct = nullptr 
)

◆ call_0_2()

template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T awali::dyn::loading::call_0_2 ( std::string const &  name,
std::string const &  group,
std::string const &  stat_ctx,
ARG1_T  other1,
ARG2_T  other2,
RET_T(*)(ARG1_T, ARG2_T)  fct = nullptr 
)

◆ call_0_3()

template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T awali::dyn::loading::call_0_3 ( std::string const &  name,
std::string const &  group,
std::string const &  stat_ctx,
ARG1_T  other1,
ARG2_T  other2,
ARG3_T  other3,
RET_T(*)(ARG1_T, ARG2_T, ARG3_T)  fct = nullptr 
)

◆ call_1_0()

template<typename RET_T , typename ARG1_T >
RET_T awali::dyn::loading::call_1_0 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut,
RET_T(*)(ARG1_T)  fct = nullptr 
)

◆ call_1_1()

template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T awali::dyn::loading::call_1_1 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  other1,
RET_T(*)(ARG1_T, ARG2_T)  fct = nullptr 
)

◆ call_1_2()

template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T awali::dyn::loading::call_1_2 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  other1,
ARG3_T  other2,
RET_T(*)(ARG1_T, ARG2_T, ARG3_T)  fct = nullptr 
)

◆ call_1_3()

template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T , typename ARG4_T >
RET_T awali::dyn::loading::call_1_3 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  other1,
ARG3_T  other2,
ARG4_T  other3,
RET_T(*)(ARG1_T, ARG2_T, ARG3_T, ARG4_T)  fct = nullptr 
)

◆ call_1_4()

template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T , typename ARG4_T , typename ARG5_T >
RET_T awali::dyn::loading::call_1_4 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  other1,
ARG3_T  other2,
ARG4_T  other3,
ARG5_T  other4,
RET_T(*)(ARG1_T, ARG2_T, ARG3_T, ARG4_T, ARG5_T)  fct = nullptr 
)

◆ call_2_0()

template<typename RET_T , typename ARG1_T , typename ARG2_T >
RET_T awali::dyn::loading::call_2_0 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  aut2,
RET_T(*)(ARG1_T, ARG2_T)  fct = nullptr 
)

◆ call_2_1()

template<typename RET_T , typename ARG1_T , typename ARG2_T , typename ARG3_T >
RET_T awali::dyn::loading::call_2_1 ( std::string const &  name,
std::string const &  group,
ARG1_T  aut1,
ARG2_T  aut2,
ARG3_T  other1,
RET_T(*)(ARG1_T, ARG2_T, ARG3_T)  fct = nullptr 
)

◆ call_tdc2()

template<typename TYPERET , typename ARG1 , typename ARG2 , TYPERET(*)(ARG1, ARG2) FCT>
TYPERET awali::dyn::loading::call_tdc2 ( std::string const &  name,
std::string const &  group,
ARG1  aut1,
ARG2  aut2 
)

◆ classname_of_ws()

std::string awali::dyn::loading::classname_of_ws ( std::string  w)

◆ example_automata()

std::map<std::string,file_loc_t> awali::dyn::loading::example_automata ( bool  recurse = false)

◆ example_ratexps()

std::map<std::string,file_loc_t> awali::dyn::loading::example_ratexps ( bool  recurse = false)

◆ examples()

std::map<std::string,file_loc_t> awali::dyn::loading::examples ( std::vector< std::string >  subdirs = {"automata","ratexps"},
bool  recurse = false 
)

◆ filename_of_ws()

std::string awali::dyn::loading::filename_of_ws ( std::string  w)

◆ get_compilation_directory()

std::vector<std::string> awali::dyn::loading::get_compilation_directory ( std::string const &  lname)

Returns the temporary compilation directory for the static module named lname.

◆ get_dot_binary()

const std::string& awali::dyn::loading::get_dot_binary ( )

Return the binary of dot.

◆ get_dyn_config_hh_directory()

std::vector<std::string> awali::dyn::loading::get_dyn_config_hh_directory ( )

Returns the directory where the config.hh file is located, stored by precedence.

◆ get_dynlib_directory()

std::vector<std::string> awali::dyn::loading::get_dynlib_directory ( )

Returns the directories where the dynamic library is located, sorted by precedence.

◆ get_examples_directory()

std::vector<std::string> awali::dyn::loading::get_examples_directory ( )

Returns the directories where the example automata are stored, sorted by precedence.

◆ get_handler() [1/3]

void* awali::dyn::loading::get_handler ( const std::string &  name,
const std::string &  group,
const std::string &  static_context 
)

◆ get_handler() [2/3]

void* awali::dyn::loading::get_handler ( const std::string &  name,
const std::string &  group,
const std::string &  static_context1,
const std::string &  static_context2 
)

◆ get_handler() [3/3]

void* awali::dyn::loading::get_handler ( const std::string &  name,
const std::string &  static_context 
)

◆ get_include_directory()

std::vector<std::string> awali::dyn::loading::get_include_directory ( )

Returns the directories where the Awali headers are located.

◆ get_lib_directory()

std::vector<std::string> awali::dyn::loading::get_lib_directory ( )

Returns the directories where the static modules are located, sorted by precedence.

◆ get_sources_directory()

std::vector<std::string> awali::dyn::loading::get_sources_directory ( )

Returns the directories where the module sources are located, sorted by precedence.

◆ libname() [1/2]

std::string awali::dyn::loading::libname ( const std::string &  ctx,
const std::string &  name 
)

◆ libname() [2/2]

std::string awali::dyn::loading::libname ( const std::string &  ctx1,
const std::string &  ctx2,
const std::string &  name 
)

◆ make_awali_dir()

int awali::dyn::loading::make_awali_dir ( )

◆ make_library() [1/2]

std::string awali::dyn::loading::make_library ( const std::string &  name,
const std::string &  static_context,
bool  check_dependency = false 
)

◆ make_library() [2/2]

std::string awali::dyn::loading::make_library ( const std::string &  name,
const std::string &  static_context1,
const std::string &  static_context2,
bool  check_dependency = false 
)

◆ rec_parse_context()

void awali::dyn::loading::rec_parse_context ( const std::string &  s,
size_t &  p,
std::set< std::string > &  weightsets,
std::set< std::string > &  labelsets,
std::string &  ws,
std::string &  ls 
)

◆ rec_parse_labelset()

void awali::dyn::loading::rec_parse_labelset ( const std::string &  s,
size_t &  p,
std::set< std::string > &  labelsets,
std::string &  ls 
)