| | class Block: |
| | def __init__(self, doc: str = '', title: str = '', content: str = '', content_fr: str = '', |
| | index: str = '', rank: int = 0, level: int = 0, distance: float = 99999): |
| | self.doc = doc |
| | self.title = title |
| | self.title_fr = "" |
| | self.content = content |
| | self.content_fr = content_fr |
| | self.specials = [] |
| | self.index = index |
| | self.rank = rank |
| | self.level = level |
| | self.distance = distance |
| |
|
| | def to_dict(self) -> {}: |
| | block_dict = {'doc': self.doc, |
| | 'title': self.title, |
| | 'title_fr': self.title_fr, |
| | 'content': self.content, |
| | 'content_fr': self.content_fr, |
| | 'index': self.index, |
| | 'rank': self.rank, |
| | 'level': self.level, |
| | 'distance': self.distance} |
| | for i, s in enumerate(self.specials): |
| | special_key = 'special_'+str(i) |
| | block_dict[special_key] = s |
| | block_dict['specials_len'] = len(self.specials) |
| | return block_dict |
| |
|
| | def from_dict(self, block_dict: {}): |
| | self.doc = block_dict['doc'] |
| | self.title = block_dict['title'] |
| | self.title_fr = block_dict['title_fr'] |
| | self.content = block_dict['content'] |
| | self.content_fr = block_dict['content_fr'] |
| | self.index = block_dict['index'] |
| | self.rank = block_dict['rank'] |
| | self.level = block_dict['level'] |
| | self.distance = block_dict['distance'] |
| | self.specials = [] |
| | for i in range(block_dict['specials_len']): |
| | special_key = 'special_' + str(i) |
| | self.specials.append(block_dict[special_key]) |
| | return self |
| |
|
| | @property |
| | def distance_str(self) -> str: |
| | return format(self.distance, '.2f') |
| |
|