(&self, id: &str)
| 776 | |
| 777 | impl KgTxnT for ReadTxn { |
| 778 | fn get_kg_node(&self, id: &str) -> PristineResult<Option<KgNode>> { |
| 779 | let table = match self.txn.open_table(KG_NODES) { |
| 780 | Ok(t) => t, |
| 781 | Err(redb::TableError::TableDoesNotExist(_)) => return Ok(None), |
| 782 | Err(e) => return Err(PristineError::from(e)), |
| 783 | }; |
| 784 | match table.get(id)? { |
| 785 | Some(value) => { |
| 786 | let node: KgNode = serde_json::from_slice(value.value()).map_err(|e| { |
| 787 | PristineError::Serialization { |
| 788 | message: e.to_string(), |
| 789 | } |
| 790 | })?; |
| 791 | Ok(Some(node)) |
| 792 | } |
| 793 | None => Ok(None), |
| 794 | } |
| 795 | } |
| 796 | |
| 797 | fn get_kg_edges_from(&self, node_id: &str) -> PristineResult<Vec<KgEdge>> { |
| 798 | let from_table = match self.txn.open_multimap_table(KG_EDGES_FROM) { |
no test coverage detected