|
template<typename T > |
T | absurd () |
| The polymorphic terminate function.
|
|
FCPPT_DETAIL_SYMBOL fcppt::args_vector | args (int argc, fcppt::args_char const *const *argv) |
| Copy main arguments into a container.
|
|
FCPPT_DETAIL_SYMBOL fcppt::args_vector | args_from_second (int argc, fcppt::args_char const *const *argv) |
| Copy main arguments into a container, starting from the second.
|
|
template<typename If , typename Then > |
std::invoke_result_t< If > | cond (bool const _conditional, If const &_if, Then const &_then) |
| Functional if-then-else.
|
|
template<typename Type > |
fcppt::detail::const_< Type > | const_ (Type _value) |
| Function returning a constant.
|
|
template<typename Dest , typename Source > |
fcppt::shared_ptr< Dest > | const_pointer_cast (fcppt::shared_ptr< Source const > const &_ptr) |
| Casts an fcppt::shared_ptr using const_cast
|
|
template<typename Type > |
Type | copy (Type const &_value) |
| Copies a value.
|
|
template<typename Arg > |
decltype(auto) | deref (Arg &_arg) |
| Dereferences an object.
|
|
template<typename Dest , typename Source > |
fcppt::optional::object< fcppt::shared_ptr< Dest > > | dynamic_pointer_cast (fcppt::shared_ptr< Source > const &_ptr) |
| Casts an fcppt::shared_ptr using dynamic_cast
|
|
FCPPT_DETAIL_SYMBOL fcppt::string | error_code_to_string (std::error_code const &) |
| Converts an error code to an fcppt::string.
|
|
template<typename Dest , fcppt::concepts::string Source> |
fcppt::optional::object< Dest > | extract_from_string (Source &&_source) |
| Convert a string to a different type using fcppt::insert_extract_locale.
|
|
template<typename Dest , fcppt::concepts::string Source> |
fcppt::optional::object< Dest > | extract_from_string_fmt (Source &&_source, std::ios_base::fmtflags const _flags) |
| Convert a string to a different type using fcppt::insert_extract_locale and format flags.
|
|
template<typename Dest , fcppt::concepts::string Source> |
fcppt::optional::object< Dest > | extract_from_string_locale_fmt (Source &&_source, std::locale const &_locale, fcppt::optional::object< std::ios_base::fmtflags > const _flags) |
| Convert a string to a different type using a locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::string | from_std_string (std::string_view) |
| Convert from std::string to fcppt::string using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::string | from_std_string_locale (std::string_view, std::locale const &) |
| Convert from std::string to fcppt::string using a custom locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_string | from_std_wstring (std::wstring_view) |
| Convert from std::wstring to fcppt::string using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_string | from_std_wstring_locale (std::wstring_view, std::locale const &) |
| Convert from std::wstring to fcppt::string using a custom locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_std_string | getenv (std::string_view) |
| Gets an optional value from the environment.
|
|
template<typename Type > |
std::size_t | hash (Type const &_value) |
| Calls std::hash.
|
|
std::size_t | hash_combine (std::size_t const _hash_old, std::size_t const _hash_new) |
| Combines two hashes.
|
|
FCPPT_DETAIL_SYMBOL std::locale | insert_extract_locale () |
| Returns the default locale to use when converting from or to strings.
|
|
template<typename Type , typename Arg > |
constexpr fcppt::make_literal< Type >::decorated_type | literal (Arg const &&_integral) noexcept |
| Creates a literal of a type.
|
|
template<typename Type > |
fcppt::reference< Type const > | make_cref (Type const &_ref) noexcept |
| Convenience function to create const references.
|
|
template<typename Ret , typename... Args> |
fcppt::function< Ret(Args...)> | make_function (Ret(&_function)(Args...)) |
| Creates an fcppt::function.
|
|
template<typename Int > |
fcppt::int_range< Int > | make_int_range (Int const _begin, Int const _end) |
| Creates a forward integer range.
|
|
template<typename Int > |
fcppt::int_range< Int > | make_int_range_count (Int const _count) |
| Creates a forward integer range starting at zero.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_error_code | make_optional_error_code (std::error_code const &error) |
| Creates an optional error code.
|
|
template<typename Type > |
fcppt::recursive< std::remove_cvref_t< Type > > | make_recursive (Type &&_value) |
| Creates an fcppt::recursive.
|
|
template<typename Type > |
fcppt::reference< Type > | make_ref (Type &_ref) noexcept |
| Convenience function to create references.
|
|
template<typename Res , typename... Args> |
fcppt::shared_ptr< Res > | make_shared_ptr (Args &&..._args) |
| Like std::make_shared but for fcppt::shared_ptr.
|
|
template<typename Tag , typename Type > |
fcppt::strong_typedef< std::remove_cvref_t< Type >, Tag > | make_strong_typedef (Type &&_value) |
| Creates a new strong typedef given a tag and a value.
|
|
template<typename Res , typename... Args> |
fcppt::unique_ptr< Res > | make_unique_ptr (Args &&..._args) |
| Like std::make_unique for fcppt::unique_ptr.
|
|
template<typename Type > |
Type | move_clear (Type &_value) |
| Moves out of a value and clears it.
|
|
template<bool Cond, typename Arg > |
decltype(auto) | move_if (Arg &&_arg) |
| Moves an object if a condition is true.
|
|
template<typename Type , typename Arg > |
decltype(auto) | move_if_rvalue (Arg &&_arg) |
| Moves an object if a type is an rvalue.
|
|
template<typename Type , typename Iterator > |
decltype(fcppt::detail::move_iterator_if_rvalue< Type >(std::declval< Iterator const & >())) | move_iterator_if_rvalue (Iterator const &_iterator) |
| Makes a move iterator if a type is an rvalue.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_std_string | narrow (std::wstring_view _string) |
| Converts a std::wstring to std::string, using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_std_string | narrow_locale (std::wstring_view _string, std::locale const &_locale) |
| Converts a std::wstring to std::string, using a locale.
|
|
constexpr bool | not_ (bool const _value) |
| Boolean not.
|
|
template<typename Arg > |
fcppt::detail::output< Arg > | output (Arg const &_arg) |
| Outputs an object.
|
|
template<typename Source > |
fcppt::string | output_to_fcppt_string (Source const &_source) |
| Converts an arbitrary type to a fcppt::string, using fcppt::insert_extract_locale.
|
|
template<typename Source > |
fcppt::string | output_to_fcppt_string_locale (Source const &_source, std::locale const &_locale) |
| Converts an arbitrary type to a fcppt::string, using a custom locale.
|
|
template<typename Source > |
std::string | output_to_std_string (Source const &_source) |
| Convert an arbitrary type to a std::string, using fcppt::insert_extract_locale.
|
|
template<typename Source > |
std::string | output_to_std_string_locale (Source const &_source, std::locale const &_locale) |
| Convert an arbitrary type to a std::string, using a custom locale.
|
|
template<typename Source > |
std::wstring | output_to_std_wstring (Source const &_source) |
| Convert an arbitrary type to a std::wstring, using fcppt::insert_extract_locale.
|
|
template<typename Source > |
std::wstring | output_to_std_wstring_locale (Source const &_source, std::locale const &_locale) |
| Convert an arbitrary type to a std::wstring, using a custom locale.
|
|
template<typename Dest , typename Source > |
Dest | output_to_string (Source const &_source) |
| Convert an arbitrary type to a string, using fcppt::insert_extract_locale.
|
|
template<typename Dest , typename Source > |
Dest | output_to_string_locale (Source const &_source, std::locale const &_locale) |
| Convert an arbitrary type to a string, using a custom locale.
|
|
template<typename... Args> |
fcppt::overloaded< std::remove_cvref_t< Args >... > | overload (Args &&..._args) |
| Creates an overloaded lambda.
|
|
template<typename Type > |
bool | operator== (fcppt::recursive< Type > const &_left, fcppt::recursive< Type > const &_right) |
| Compares two fcppt::recursive for equality.
|
|
template<typename Type > |
bool | operator!= (fcppt::recursive< Type > const &_left, fcppt::recursive< Type > const &_right) |
| Compares two fcppt::recursive for inequality.
|
|
template<typename Ch , typename Traits , typename Type > |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::recursive< Type > const &_value) |
|
template<typename T > |
bool | operator== (fcppt::reference< T > const &_a, fcppt::reference< T > const &_b) noexcept |
| Compares two references for equality.
|
|
template<typename T > |
bool | operator!= (fcppt::reference< T > const &_a, fcppt::reference< T > const &_b) noexcept |
| Compares two references for inequality.
|
|
template<typename T > |
bool | operator< (fcppt::reference< T > const &_a, fcppt::reference< T > const &_b) noexcept |
| Compares two references lexicographically.
|
|
template<typename T , typename Ch , typename Traits > |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::reference< T > const &_ref) |
| Outputs a reference wrapper to a stream.
|
|
template<typename Base , typename Type > |
fcppt::reference< Base > | reference_to_base (fcppt::reference< Type > const _ref) noexcept |
| Converts a reference to a base class.
|
|
template<typename Type > |
fcppt::reference< Type const > | reference_to_const (fcppt::reference< Type > const _ref) noexcept |
| Converts a reference to a const reference.
|
|
template<typename MaxIndex , typename Index , typename Function , typename FailFunction > |
decltype(auto) | runtime_index (Index const _index, Function const &_function, FailFunction const &_fail_function) |
| Transforms a runtime index into a an integral constant.
|
|
template<typename Type1 , typename Type2 , typename Deleter > |
bool | operator== (fcppt::shared_ptr< Type1, Deleter > const &left, fcppt::shared_ptr< Type2, Deleter > const &right) |
| Compares two shared ptrs for equality.
|
|
template<typename Type1 , typename Type2 , typename Deleter > |
bool | operator!= (fcppt::shared_ptr< Type1, Deleter > const &left, fcppt::shared_ptr< Type2, Deleter > const &right) |
| Compares two shared ptrs for inequality.
|
|
template<typename Type1 , typename Type2 , typename Deleter > |
bool | operator< (fcppt::shared_ptr< Type1, Deleter > const &left, fcppt::shared_ptr< Type2, Deleter > const &right) |
| Checks if one shared ptr is less than the other.
|
|
template<typename Type , typename Deleter > |
void | swap (fcppt::shared_ptr< Type, Deleter > &left, fcppt::shared_ptr< Type, Deleter > &right) noexcept |
| Swaps two shared pointers.
|
|
template<typename Ch , typename Traits , typename Type , typename Deleter > |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::shared_ptr< Type, Deleter > const &_ptr) |
| Outputs a shared pointer.
|
|
template<typename Dest , typename Source > |
fcppt::shared_ptr< Dest > | static_pointer_cast (fcppt::shared_ptr< Source > const &_ptr) |
| Casts an fcppt::shared_ptr using static_cast
|
|
FCPPT_DETAIL_SYMBOL std::locale | string_conv_locale () |
| Returns the default locale to use when converting between strings.
|
|
template<typename StrongTypedef1 , typename Function , typename... StrongTypedefs> |
auto | strong_typedef_apply (Function const &_function, StrongTypedef1 &&_strong_typedef1, StrongTypedefs &&..._strong_typedefs) -> fcppt::strong_typedef< decltype(_function(fcppt::move_if_rvalue< StrongTypedef1 >(_strong_typedef1.get()), fcppt::move_if_rvalue< StrongTypedefs >(_strong_typedefs.get())...)), fcppt::strong_typedef_tag< std::remove_cvref_t< StrongTypedef1 > > > |
| Applies a function to multiple strong typedefs.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator+ (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Add two strong typedefs.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator- (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Subtract two strong typedefs.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator* (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Multiply two strong typedefs.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator- (fcppt::strong_typedef< T, Tag > const &_value) |
| Unary minus.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator++ (fcppt::strong_typedef< T, Tag > &_value) |
| Preincrement operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator-- (fcppt::strong_typedef< T, Tag > &_value) |
| Predecrement operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator++ (fcppt::strong_typedef< T, Tag > &_value, int) |
| Postincrement operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator-- (fcppt::strong_typedef< T, Tag > &_value, int) |
| Postdecrement operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator+= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Add and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator-= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Subtract and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator*= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Multiply and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator&= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise and and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator|= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise or and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > & | operator^= (fcppt::strong_typedef< T, Tag > &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise xor and assign operator.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator& (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise and.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator| (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise or.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator^ (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Bitwise xor.
|
|
template<typename T , typename Tag > |
fcppt::strong_typedef< T, Tag > | operator~ (fcppt::strong_typedef< T, Tag > const &_value) |
| Bitwise negation.
|
|
template<typename T , typename Tag > |
bool | operator< (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator less.
|
|
template<typename T , typename Tag > |
bool | operator<= (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator less equal.
|
|
template<typename T , typename Tag > |
bool | operator> (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator greater.
|
|
template<typename T , typename Tag > |
bool | operator>= (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator greater equal.
|
|
template<typename T , typename Tag > |
bool | operator== (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator equal.
|
|
template<typename T , typename Tag > |
bool | operator!= (fcppt::strong_typedef< T, Tag > const &_left, fcppt::strong_typedef< T, Tag > const &_right) |
| Operator not equal.
|
|
template<typename StrongTypedef , typename Conv , typename Arg >
requires fcppt::is_strong_typedef<StrongTypedef>::value |
constexpr StrongTypedef | strong_typedef_construct_cast (Arg const &_arg) |
| Applies a cast from fcppt.cast and then construct the strong typedef.
|
|
template<typename Ch , typename Traits , typename T , typename Tag > |
std::basic_istream< Ch, Traits > & | operator>> (std::basic_istream< Ch, Traits > &_stream, fcppt::strong_typedef< T, Tag > &_value) |
| Input operator for strong typedefs.
|
|
template<typename StrongTypedef , typename Function > |
auto | strong_typedef_map (StrongTypedef &&_input, Function const &_function) -> fcppt::strong_typedef< decltype(_function(fcppt::move_if_rvalue< StrongTypedef >(_input.get()))), fcppt::strong_typedef_tag< std::remove_cvref_t< StrongTypedef > > > |
| Maps over a strong typedef.
|
|
template<typename Ch , typename Traits , typename T , typename Tag > |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::strong_typedef< T, Tag > const &_value) |
| Output operator for strong typedefs.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional::object< int > | system (fcppt::string const &) |
| Calls std::system .
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_std_string | to_std_string (fcppt::string_view) |
| Convert from fcppt::string to std::string using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL fcppt::optional_std_string | to_std_string_locale (fcppt::string_view, std::locale const &) |
| Convert from fcppt::string to std::string using a custom locale.
|
|
FCPPT_DETAIL_SYMBOL std::wstring | to_std_wstring (fcppt::string_view) |
| Convert from fcppt::string to std::wstring using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL std::wstring | to_std_wstring_locale (fcppt::string_view, std::locale const &) |
| Convert from fcppt::string to std::wstring using a custom locale.
|
|
FCPPT_DETAIL_SYMBOL std::string | type_name (char const *) |
| Returns a demangled type name if possible.
|
|
FCPPT_DETAIL_SYMBOL std::string | type_name_from_index (std::type_index const &) |
| Returns a demangled type name if possible.
|
|
FCPPT_DETAIL_SYMBOL std::string | type_name_from_info (std::type_info const &) |
| Returns a demangled type name if possible.
|
|
template<typename Cast , typename Derived , typename Base , typename Deleter > |
fcppt::variant::object< fcppt::unique_ptr< Derived, Deleter >, fcppt::unique_ptr< Base, Deleter > > | unique_ptr_dynamic_cast (fcppt::unique_ptr< Base, Deleter > &&_other) noexcept |
| Casts a unique_ptr to a derived class.
|
|
template<typename Type > |
fcppt::optional::object< fcppt::unique_ptr< Type > > | unique_ptr_from_std (std::unique_ptr< Type > &&_ptr) |
| Converts a std::unique_ptr to an fcppt unique ptr.
|
|
template<typename Base , typename Derived , typename Deleter > |
fcppt::unique_ptr< Base, Deleter > | unique_ptr_to_base (fcppt::unique_ptr< Derived, Deleter > &&_other) noexcept |
| Casts a unique_ptr to a base class.
|
|
template<typename Type , typename Deleter > |
fcppt::unique_ptr< Type const, Deleter > | unique_ptr_to_const (fcppt::unique_ptr< Type, Deleter > &&_other) noexcept |
| Casts a unique_ptr to a const unique_ptr.
|
|
bool | operator== (fcppt::unit const &, fcppt::unit const &) |
| Compares units for equality.
|
|
bool | operator!= (fcppt::unit const &, fcppt::unit const &) |
| Compares units for inequality.
|
|
template<typename Ch , typename Traits > |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::unit const &) |
| Outputs a unit to a basic_ostream.
|
|
FCPPT_DETAIL_SYMBOL std::string | version_string () |
| fcppt's version as a string
|
|
template<typename Type1 , typename Type2 , typename Deleter > |
bool | operator< (fcppt::weak_ptr< Type1, Deleter > const &left, fcppt::weak_ptr< Type2, Deleter > const &right) noexcept |
| Checks if one weak ptr is less than the other.
|
|
template<typename Type , typename Deleter > |
void | swap (fcppt::weak_ptr< Type, Deleter > &left, fcppt::weak_ptr< Type, Deleter > &right) noexcept |
| Swaps two weak pointers.
|
|
FCPPT_DETAIL_SYMBOL std::wstring | widen (std::string_view) |
| Converts a std::string to std::wstring, using fcppt::string_conv_locale.
|
|
FCPPT_DETAIL_SYMBOL std::wstring | widen_locale (std::string_view, std::locale const &) |
| Converts a std::string to std::wstring , using a locale.
|
|