#ifndef PASTELSYS_PRINTABLE_CONCEPT_H
#define PASTELSYS_PRINTABLE_CONCEPT_H
#include "pastel/sys/concept/concept.h"
#include <string>
// See concept.txt for why native types must be
// defined _before_ the concept.
#include "pastel/sys/printable/native_printable.h"
namespace Pastel
{
template <typename T>
concept Printable_Concept_ = requires(T t) {
{asString(t)} -> std::convertible_to<std::string>;
};
template <typename T>
concept Printable_Concept =
Printable_Concept_<RemoveCvRef<T>>;
using Printable_Archetype = integer;
}
#endif