コード例 #1
0
ファイル: mnist.py プロジェクト: eos21/pyeos
    def load(self):
        sizeweights = 0
        sizebiases = 0

        keys = struct.pack('Q', N('sizeweights'))
        values = bytes(8)
        if eoslib.load(mnist, mnist, table_network, keys, 0, 0, values) > 0:
            sizeweights = int.from_bytes(values, 'little')

        if sizeweights <= 0:
            return False

        keys = struct.pack('Q', N('sizebiases'))
        values = bytes(8)
        if eoslib.load(mnist, mnist, table_network, keys, 0, 0, values) > 0:
            sizebiases = int.from_bytes(values, 'little')

        if sizebiases <= 0:
            return False

        print("+++++++++++++++++", sizeweights, sizebiases)

        keys = struct.pack('Q', N('weights'))
        values = bytes(sizeweights)
        if eoslib.load(mnist, mnist, table_network, keys, 0, 0, values) <= 0:
            return False
        self.weights = pickle.loads(values)

        keys = struct.pack('Q', N('biases'))
        values = bytes(sizebiases)
        if eoslib.load(mnist, mnist, table_network, keys, 0, 0, values) <= 0:
            return False
        self.biases = pickle.loads(values)
        print('load success!')
        return True
コード例 #2
0
ファイル: code.py プロジェクト: eos21/pyeos
def test_db2():
    msg = eoslib.readMessage()
    print(len(msg))
    test = N(b'eos')
    result = int.from_bytes(msg[:8], 'little')
    size = msg[8]
    for i in range(size):
        result = int.from_bytes(msg[9 + i * 8:9 + i * 8 + 8], 'little')
        print(result)
    keys = msg[:8]
    values = msg[8:]
    eoslib.store(test, test, test, keys, 0, values)
    keys = msg[:8]
    values = msg[8:]
    eoslib.load(test, test, test, keys, 0, 0, values)
    print(values)
コード例 #3
0
ファイル: code.py プロジェクト: anklee/pyeos
def test_rw_db():

    a = Account('test')
    print('+++++++++balance:', a.balance)
    a.balance += 100
    a.store()

    a = Account('test')
    print('+++++++++balance:', a.balance)

    db_keys = struct.pack('Q', N('currency'))
    values = bytes(16)
    eos = N('eos')
    ret = eoslib.load(eos, eos, N('test'), db_keys, 0, 0, values)
    print('+++++++eoslib.load return:', ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)

    print('--------------------------------')
    values = struct.pack('QQ', 0x778899, 0x112233)
    ret = eoslib.store(test, N('test'), db_keys, 0, values)
    print('++++++++eoslib.store return:', ret)

    values = bytes(16)
    ret = eoslib.load(test, eos, N('test'), db_keys, 0, 0, values)
    print('+++++++eoslib.load return:', ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)

    print('--------------------------------')

    values = struct.pack('QQ', 44, 33)
    ret = eoslib.store(test, N('test'), db_keys, 0, values)
    print('++++++++eoslib.store return:', ret)

    values = bytes(16)
    ret = eoslib.load(test, test, N('test'), db_keys, 0, 0, values)
    print('+++++++eoslib.load return:', ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)
コード例 #4
0
 def load_by_price(price):
     keys = struct.pack('16s16s', bytes(16), price())
     values = bytes(12)
     if eoslib.load(exchange, exchange, table_bids, keys, 1, 1, values) > 0:
         bid = Bid()
         bid.buyer = OrderID(keys[:16])
         bid.price = uint128(keys[16:])
         result = struct.unpack('QI', values)
         bid.quantity = result[0]
         bid.expiration = result[1]
         return bid
     return None
コード例 #5
0
 def load_by_price(price):
     keys = struct.pack('16s16s', bytes(16), price())
     values = bytes(12)
     if eoslib.load(exchange, exchange, table_asks, keys, 1, 1, values) > 0:
         ask = Ask()
         ask.seller = OrderID(keys[:16])
         ask.price = uint128(keys[16:])
         result = struct.unpack('QI', values)
         ask.quantity = result[0]
         ask.expiration = result[1]
         return ask
     else:
         return None
コード例 #6
0
 def load(self):
     keys = struct.pack("Q", self.owner)
     print(self.owner)
     values = bytes(20)
     if eoslib.load(exchange, exchange, table_account, keys, 0, 0, values) > 0:
         values = struct.unpack('QQI', values)
         print(values)
         self.eos_balance = values[0]
         self.currency_balance = values[1]
         self.open_orders = values[2]
     else:
         self.eos_balance = 0
         self.currency_balance = 0
         self.open_orders = 0
コード例 #7
0
ファイル: mnist.py プロジェクト: eos21/pyeos
def test():
    net = Network([784, 30, 10])
    biases = pickle.dumps(net.biases)
    weights = pickle.dumps(net.weights)
    print(len(weights))
    keys = struct.pack('Q', N('sizeweights'))
    values = struct.pack('Q', len(weights))
    ret = eoslib.store(mnist, mnist, table_network, keys, 0, values)
    print('store return:', ret)

    keys = struct.pack('Q', N('sizeweights'))
    values = bytes(8)
    eoslib.load(mnist, mnist, table_network, keys, 0, 0, values)
    print('load return:', int.from_bytes(values, 'little'))

    keys = struct.pack('Q', N('weights'))
    ret = eoslib.store(mnist, mnist, table_network, keys, 0, weights)
    print('store return:', ret)

    keys = struct.pack('Q', N('weights'))
    values = bytes(len(weights))
    ret = eoslib.load(mnist, mnist, table_network, keys, 0, 0, values)
    print('load return:', ret)
コード例 #8
0
ファイル: code.py プロジェクト: eos21/pyeos
def test_rw_db():
    keys = struct.pack('Q', N('currency'))
    values = bytes(16)
    eos = N('eos')
    ret = eoslib.load(eos, eos, N('test'), keys, 0, 0, values)
    print('+++++++eoslib.load return:',ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)

    print('--------------------------------')
    keys = struct.pack('Q', N('currency'))
    values = struct.pack('QQ', 77, 88)
    ret = eoslib.store(test, eos, N('test'), keys, 0, values)
    print('++++++++eoslib.store return:',ret)

    values = bytes(16)
    ret = eoslib.load(test, eos, N('test'), keys, 0, 0, values)
    print('+++++++eoslib.load return:',ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)

    print('--------------------------------')

    keys = struct.pack('Q', N('currency'))
    values = struct.pack('QQ', 44, 33)
    ret = eoslib.store(test, test, N('test'), keys, 0, values)
    print('++++++++eoslib.store return:',ret)

    values = bytes(16)
    ret = eoslib.load(test, test, N('test'), keys, 0, 0, values)
    print('+++++++eoslib.load return:',ret)
    print(values)
    results = struct.unpack('QQ', values)
    print(results)
コード例 #9
0
 def load(self):
     value = bytes(8)
     eoslib.load(self.scope, code, table, Account.key, 0, 0, value)
     self.balance = int.from_bytes(value, 'little')