1 #ifndef canvas_Utilities_TypeID_h 2 #define canvas_Utilities_TypeID_h 24 explicit TypeID(std::type_info
const&) noexcept;
25 explicit TypeID(std::type_info
const*) noexcept;
28 explicit TypeID(T
const& val) noexcept;
34 std::type_info
const&
typeInfo()
const;
35 char const*
name()
const;
40 explicit operator bool()
const;
42 void print(std::ostream&)
const;
45 std::type_info
const*
ti_{
nullptr};
54 std::string
const& template_name)
56 return type_name.find(template_name +
'<') == 0ull;
TypeID & operator=(TypeID const &) noexcept
bool operator>(ScheduleID const left, ScheduleID const right) noexcept
std::string friendlyClassName() const
bool operator==(TypeID const &) const
bool operator<(TypeID const &) const
string name_of_assns_partner(string assns_type_name)
bool operator!=(ScheduleID const left, ScheduleID const right) noexcept
string name_of_unwrapped_product(string const &wrapped_name)
void print(std::ostream &) const
std::ostream & operator<<(std::ostream &os, const GroupSelector &gs)
string name_of_assns_base(string assns_type_name)
bool is_instantiation_of(std::string const &type_name, std::string const &template_name)
char const * name() const
std::string className() const
string name_of_template_arg(string const &template_instance, size_t desired_arg)
bool is_assns(std::string const &type_name)
std::type_info const & typeInfo() const
std::type_info const * ti_