3#include <QSharedDataPointer>
8#include <knowCore/Uris/Uris.h>
32 Subject(
const QString& _string, Type _type);
40 template<
typename _T_>
41 requires(knowCore::Uris::IsUriDefinitionV<_T_>)
47 bool operator==(
const Subject& _rhs)
const;
51 QString variableName()
const;
52 QByteArray md5()
const;
53 QJsonValue toJsonValue()
const;
54 static cres_qresult<Subject> fromJsonValue(
const QJsonValue& _value);
55 QCborValue toCborValue()
const;
56 static cres_qresult<Subject> fromCborValue(
const QCborValue& _value);
59 QSharedDataPointer<Private> d;
61 uint qHash(
const Subject& key, std::size_t seed = 0);
70 case knowRDF::Subject::Type::Undefined:
72 case knowRDF::Subject::Type::Uri:
73 return format_to(ctx.out(),
"uri({})", p.uri());
74 case knowRDF::Subject::Type::BlankNode:
75 return format_to(ctx.out(),
"blank_node({})", p.blankNode());
76 case knowRDF::Subject::Type::Variable:
77 return format_to(ctx.out(),
"variable(?{})", p.variableName());
79 return format_to(ctx.out(),
"undefined()");
Definition BlankNode.h:25
Subject(const _T_ &_t)
Definition Subject.h:42