Esempio n. 1
0
 def known_ids(self):
     if self._known is None:
         tree = self.tree
         if tree is None or tree/"obj" is None:
             self._known = {}
         else:
             self._known = jsonical.loads((tree/"obj"/"known").data)
     return self._known
Esempio n. 2
0
 def active_ids(self):
     if self._active is None:
         tree = self.tree
         if tree is None or tree/"obj" is None:
             self._acitve = {}
         else:
             self._active = jsonical.loads((tree/"obj"/"active").data)
     return self._active
Esempio n. 3
0
def stdin():
    while True:
        line = sys.stdin.readline()
        if not line:
            return
        if not line.strip():
            continue
        try:
            yield jsonical.loads(line)
        except:
            sys.stderr.write("LAST LINE: %r\n" % line)
            raise
Esempio n. 4
0
 def get(self, path):
     tree = self.tree
     if tree is None:
         return None
     parts = git.utils.split(path)
     for p in parts:
         tree = tree/p
         if tree is None:
             return None
     if isinstance(tree, git.Blob):
         return jsonical.loads(tree.data)
     return tree