Ejemplo n.º 1
0
def det_hash(x):
    """Deterministically takes sha256 of dict, list, int, or string."""
    #def det_list(l): return '[%s]' % ','.join(map(det, sorted(l)))
    #def det_dict(x):
    #    list_=map(lambda p: det(p[0]) + ':' + det(p[1]), sorted(x.items()))
    #    return '{%s}' % ','.join(list_)
    #def det(x): return {list: det_list, dict: det_dict}.get(type(x), str)(x)
    return hash_(package(x, sort_keys=True))
Ejemplo n.º 2
0
def det_hash(x):  # deterministically takes sha256 of dict, list, int, or string

    def det_list(l): return '[%s]' % ','.join(map(det, sorted(l)))
    
    def det_dict(x): 
        list_ = map(lambda p: det(p[0]) + ':' + det(p[1]), sorted(x.items()))
        return '{%s}' % ','.join(list_)
        
    def det(x): return {list: det_list, dict: det_dict}.get(type(x), str)(x)
    
    return hashlib.sha256(det(unpackage(package(x)))).hexdigest()
Ejemplo n.º 3
0
def det_hash(x):  # deterministically takes sha256 of dict, list, int, or string
    def det_list(l):
        return "[%s]" % ",".join(map(det, sorted(l)))

    def det_dict(x):
        list_ = map(lambda p: det(p[0]) + ":" + det(p[1]), sorted(x.items()))
        return "{%s}" % ",".join(list_)

    def det(x):
        return {list: det_list, dict: det_dict}.get(type(x), str)(x)

    return custom.hash_(det(unpackage(package(x))))
Ejemplo n.º 4
0
def det_hash(x):  #deterministically takes sha256 of dict, list, int, or string
    def det_list(l):
        return '[%s]' % ','.join(map(det, sorted(l)))

    def det_dict(x):
        list_ = map(lambda p: det(p[0]) + ':' + det(p[1]), sorted(x.items()))
        return '{%s}' % ','.join(list_)

    def det(x):
        return {list: det_list, dict: det_dict}.get(type(x), str)(x)

    return custom.hash_(det(unpackage(package(x))))
Ejemplo n.º 5
0
def pretty(dic):
    """Pretty print a json-compatible dictionary."""
    print package(dic, sort_keys=True, indent=4)
Ejemplo n.º 6
0
def hash_(x):
    return hashlib.sha256(package(x, sort_keys=True)).hexdigest()
Ejemplo n.º 7
0
def db_put(key, dic, DB={}):
    dic = unpackage(package(dic))  #keeps it deterministic.
    return s_to_db({'type': 'put', 'args': [str(key), dic]})
Ejemplo n.º 8
0
def det_hash(x):
    """Deterministically takes sha256 of dict, list, int, or string."""
    #x=unpackage(package(x))
    #log('in det hash: ' +str(package(x, sort_keys=True)))
    return hash_(package(x, sort_keys=True))
Ejemplo n.º 9
0
def pretty(dic):
    print_(package(dic, sort_keys=True, indent=4))
Ejemplo n.º 10
0
def det_hash(x):
    """Deterministically takes sha256 of dict, list, int, or string."""
    return hash_(package(x, sort_keys=True))
Ejemplo n.º 11
0
def raw_write_page(file, txt):
    with open('db/' + file, 'w') as myfile:
        myfile.write(package(txt))
Ejemplo n.º 12
0
def hash_(x): return hashlib.sha256(package(x, sort_keys=True)).hexdigest()
def guess(n):
Ejemplo n.º 13
0
def raw_write_page(file, txt):
    with open('db/'+file, 'w') as myfile: myfile.write(package(txt))
Ejemplo n.º 14
0
def db_put(key, dic, DB):
    return DB['db'].Put(str(key), package(dic))
Ejemplo n.º 15
0
def det_hash(x):#deterministically hash
    def det(x): return {list: (lambda l: '[%s]' % ','.join(map(det, sorted(l)))),
                        dict:(lambda x: '{%s}' % ','.join(map(lambda p: det(p[0]) + ':' + det(p[1]), sorted(x.items()))))}.get(type(x), str)(x)
    return hashlib.sha256(det(unpackage(package(x)))).hexdigest()
Ejemplo n.º 16
0
def put(key, val): return state.update(key, rlp.encode(package(val)))
def delete(key):  return state.delete(key)
Ejemplo n.º 17
0
def det_hash(x):
    """Deterministically takes sha256 of dict, list, int, or string."""
    #x=unpackage(package(x))
    #log('in det hash: ' +str(package(x, sort_keys=True)))
    return hash_(package(x, sort_keys=True))
Ejemplo n.º 18
0
def pretty(dic):
    print package(dic, sort_keys=True, indent=4)
Ejemplo n.º 19
0
def db_put(key, dic, DB={}): 
    dic=unpackage(package(dic))#keeps it deterministic.
    return s_to_db({'type':'put', 'args':[str(key), dic]})
Ejemplo n.º 20
0
def det_hash(x):
    """Deterministically takes sha256 of dict, list, int, or string."""
    return hash_(package(x, sort_keys=True))
Ejemplo n.º 21
0
def put(key, val):
    return state.update(key, rlp.encode(package(val)))