forked from rajhrikshit/nl2sql
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcolumn.py
More file actions
52 lines (39 loc) · 1.16 KB
/
column.py
File metadata and controls
52 lines (39 loc) · 1.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
class Column:
def __init__(self, name='', type=None, equivalences=None):
self._name = name
if not type:
type = []
self._type = type
if not equivalences:
equivalences = []
self._equivalences = equivalences
self.primary = False
self.foreign = False
@property
def name(self):
return self._name
@property
def type(self):
return self._type
def add_type(self, type):
self.type.append(type)
@property
def equivalences(self):
return self._equivalences
def add_equivalence(self, equivalence):
self.equivalences.append(equivalence)
def is_equivalent(self, word):
if word in self.equivalences:
return True
else:
return False
def is_primary(self):
return self.primary
def set_as_primary(self):
self.primary = True
# print(self.name," set as Primary")
def is_foreign(self):
return self.foreign
def set_as_foreign(self, references):
self.foreign = references
# print(self.name," set as Foreign for ",references['foreign_table'])