memgraph/src/storage/vertex.hpp

30 lines
748 B
C++
Raw Normal View History

#pragma once
2015-07-07 22:18:26 +08:00
2015-12-06 23:37:42 +08:00
#include "mvcc/record.hpp"
#include "mvcc/version_list.hpp"
#include "storage/address.hpp"
#include "storage/edges.hpp"
#include "storage/property_value_store.hpp"
#include "storage/types.hpp"
2015-07-07 22:18:26 +08:00
class Vertex : public mvcc::Record<Vertex> {
public:
Vertex() = default;
// Returns new Vertex with copy of data stored in this Vertex, but without
// copying superclass' members.
Vertex *CloneData() { return new Vertex(*this); }
Edges out_;
Edges in_;
std::vector<storage::Label> labels_;
PropertyValueStore properties_;
private:
Vertex(const Vertex &other)
: mvcc::Record<Vertex>(),
out_(other.out_),
in_(other.in_),
labels_(other.labels_),
properties_(other.properties_) {}
};