#include <xtd/any_object>
#include <xtd/console>
#include <xtd/date_time>
explicit foo1(
int v) : value(
v) {}
int value = 0;
string to_string() const noexcept
override {
return string::format(
"{}", value);}
bool equals(const object& o) const noexcept override {return is<foo1>(o) && equals(static_cast<const foo1&>(o));}
bool equals(
const foo1& f)
const noexcept override {
return value ==
f.value;}
int32 compare_to(
const foo1& f)
const noexcept override {
return value <
f.value ? -1 : value >
f.value ? 1 : 0;}
};
struct foo2 {
int value = 0;
bool operator ==(
const foo2& f)
const noexcept {
return value ==
f.value;}
bool operator <(
const foo2& f)
const noexcept {
return value <
f.value;}
bool operator >(
const foo2& f)
const noexcept {
return value >
f.value;}
};
template<>
template<>
struct std::hash<foo2> {
};
auto main() -> int {
}
Represent a polymorphic wrapper capable of holding any type.
Definition any_object.hpp:28
const object & value() const
Gets the value of the current xtd::any_object object if it has been assigned a valid underlying value...
Definition any_object.hpp:66
Represents a boxed integer object.
Definition box_integer.hpp:52
static void write_line()
Writes the current line terminator to the standard output stream using the specified format informati...
Represents an instant in time, typically expressed as a date and time of day.
Definition date_time.hpp:85
static xtd::size combine(args_t... values) noexcept
Combines values into a hash code.
Definition hash_code.hpp:70
Defines a generalized comparison method that a value type or class implements to create a type-specif...
Definition icomparable.hpp:21
Defines a generalized method that a value type or class implements to create a type-specific method f...
Definition iequatable.hpp:22
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.hpp:44
virtual xtd::string to_string() const noexcept
Returns a xtd::string that represents the current object.
#define typeof_
Used to obtain the type object of a specified type or object.
Definition typeof.hpp:45
int32_t int32
Represents a 32-bit signed integer.
Definition int32.hpp:23
size_t size
Represents a size of any object in bytes.
Definition size.hpp:23
int32 as< int32 >(std::any value)
Casts a type into another type.
Definition __as_int32.hpp:36
double as< double >(std::any value)
Casts a type into another type.
Definition __as_double.hpp:36
string as< string >(std::any value)
Casts a type into another type.
Definition __as_string.hpp:36
std::string to_string(const value_t &value, const std::string &fmt, const std::locale &loc)
Convert a specified value into a string with specified format and locale.
Definition to_string.hpp:41
@ wednesday
Indicates wednesday.
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.hpp:10