summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/identity.cpp5
-rw-r--r--src/identity.h6
-rw-r--r--src/network.cpp2
-rw-r--r--src/pubkey.cpp5
-rw-r--r--src/pubkey.h5
-rw-r--r--src/storage.cpp8
-rw-r--r--src/storage.h4
7 files changed, 16 insertions, 19 deletions
diff --git a/src/identity.cpp b/src/identity.cpp
index 57f25cc..00abf0b 100644
--- a/src/identity.cpp
+++ b/src/identity.cpp
@@ -11,6 +11,9 @@ using std::nullopt;
using std::runtime_error;
using std::set;
+Identity::Identity(const Priv * p): p(p) {}
+Identity::Identity(shared_ptr<const Priv> && p): p(std::move(p)) {}
+
optional<Identity> Identity::load(const Ref & ref)
{
return Identity::load(vector { ref });
@@ -75,6 +78,8 @@ Identity::Builder Identity::modify() const
}
+Identity::Builder::Builder(Priv * p): p(p) {}
+
Identity Identity::Builder::commit() const
{
auto idata = p->storage.store(IdentityData {
diff --git a/src/identity.h b/src/identity.h
index 79b335e..92ac34f 100644
--- a/src/identity.h
+++ b/src/identity.h
@@ -23,9 +23,8 @@ public:
const optional<Stored<PublicKey>> keyMessage;
};
-class Identity::Priv
+struct Identity::Priv
{
-public:
vector<Stored<Signed<IdentityData>>> data;
shared_future<optional<string>> name;
optional<Identity> owner;
@@ -38,9 +37,8 @@ public:
function<bool(const IdentityData &)> sel);
};
-class Identity::Builder::Priv
+struct Identity::Builder::Priv
{
-public:
Storage storage;
vector<Stored<Signed<IdentityData>>> prev = {};
optional<string> name = nullopt;
diff --git a/src/network.cpp b/src/network.cpp
index e9aeb3f..f778bf9 100644
--- a/src/network.cpp
+++ b/src/network.cpp
@@ -458,7 +458,7 @@ optional<TransportHeader> TransportHeader::load(const PartialObject & obj)
}
}
- return TransportHeader { .items = items };
+ return TransportHeader(items);
}
PartialObject TransportHeader::toObject() const
diff --git a/src/pubkey.cpp b/src/pubkey.cpp
index 3a08c70..6f6c1e7 100644
--- a/src/pubkey.cpp
+++ b/src/pubkey.cpp
@@ -122,10 +122,7 @@ optional<Signature> Signature::load(const Ref & ref)
if (!key || !sig)
return nullopt;
- return Signature {
- .key = key.value(),
- .sig = sig.value(),
- };
+ return Signature(*key, *sig);
}
Ref Signature::store(const Storage & st) const
diff --git a/src/pubkey.h b/src/pubkey.h
index b14743d..607352d 100644
--- a/src/pubkey.h
+++ b/src/pubkey.h
@@ -106,10 +106,7 @@ optional<Signed<T>> Signed<T>::load(const Ref & ref)
if (sig.value()->verify(data.value().ref))
sigs.push_back(sig.value());
- return Signed {
- .data = data.value(),
- .sigs = sigs,
- };
+ return Signed(*data, sigs);
}
template<typename T>
diff --git a/src/storage.cpp b/src/storage.cpp
index db9f629..07fef51 100644
--- a/src/storage.cpp
+++ b/src/storage.cpp
@@ -720,8 +720,8 @@ vector<uint8_t> RecordT<S>::encodeInner() const
return res;
}
-template class RecordT<Storage>;
-template class RecordT<PartialStorage>;
+template class erebos::RecordT<Storage>;
+template class erebos::RecordT<PartialStorage>;
Blob::Blob(const vector<uint8_t> & vec):
@@ -852,8 +852,8 @@ optional<Blob> ObjectT<S>::asBlob() const
return nullopt;
}
-template class ObjectT<Storage>;
-template class ObjectT<PartialStorage>;
+template class erebos::ObjectT<Storage>;
+template class erebos::ObjectT<PartialStorage>;
vector<Stored<Object>> erebos::collectStoredObjects(const Stored<Object> & from)
{
diff --git a/src/storage.h b/src/storage.h
index 86dc48f..c67be22 100644
--- a/src/storage.h
+++ b/src/storage.h
@@ -98,7 +98,7 @@ private:
unique_ptr<ChainStorage> parent;
};
-struct Storage::Priv
+struct PartialStorage::Priv
{
shared_ptr<StorageBackend> backend;
@@ -111,7 +111,7 @@ struct Storage::Priv
optional<Digest> copy(const ObjectT<S> &, vector<Digest> *) const;
};
-struct Ref::Priv
+struct PartialRef::Priv
{
const unique_ptr<PartialStorage> storage;
const Digest digest;