MCPcopy Create free account
hub / github.com/alibaba/GraphScope / Property

Class Property

python/graphscope/framework/graph_schema.py:32–79  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

30
31
32class Property:
33 def __init__(
34 self, name, data_type, is_primary_key=False, property_id=0, comment=""
35 ):
36 self.name: str = name
37 self.data_type: int = data_type
38 self.is_primary_key: bool = is_primary_key
39
40 self.id: int = property_id
41 self.comment = comment
42
43 self.inner_id: int = 0
44 self.default_value = None
45
46 def as_property_def(self):
47 pb = graph_def_pb2.PropertyDefPb()
48 pb.name = self.name
49 pb.data_type = self.data_type
50 pb.pk = self.is_primary_key
51 pb.comment = self.comment
52 return pb
53
54 @property
55 def type(self):
56 return self.data_type
57
58 @classmethod
59 def from_property_def(cls, pb):
60 prop = cls(pb.name, pb.data_type, pb.pk, pb.id, pb.comment)
61 prop.inner_id = pb.inner_id
62 prop.default_value = pb.default_value
63 return prop
64
65 def __repr__(self) -> str:
66 type_str = graph_def_pb2.DataTypePb.Name(self.data_type)
67 return f"Property({self.id}, {self.name}, {type_str}, {self.is_primary_key}, {self.comment})"
68
69 def __str__(self) -> str:
70 return self.__repr__()
71
72 def to_dict(self) -> dict:
73 return {
74 "property_name": self.name,
75 "property_id": self.id,
76 "property_type": data_type_to_unified_type(self.data_type),
77 "is_primary_key": self.is_primary_key,
78 "description": self.comment,
79 }
80
81
82Relation = namedtuple("Relation", "source destination")

Callers 1

add_propertyMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected