Exemple #1
0
 def __init__(self, val=0, val_expr=None, type_expr=None, **kwargs):
     assert_type(val, int)
     assert val >= 0, 'expected non-negative val'
     super(Nat, self).__init__(val=val,
                               val_expr=val_expr,
                               type_expr=type_expr,
                               **kwargs)
Exemple #2
0
 def __init__(self, val=0, val_expr=None, type_expr=None, **kwargs):
     assert_type(val, int)
     assert val.bit_length(
     ) <= 63, f'mutez overflow, got {val.bit_length()} bits, should not exceed 63'
     super(Mutez, self).__init__(val=val,
                                 val_expr=val_expr,
                                 type_expr=type_expr,
                                 **kwargs)
Exemple #3
0
 def __init__(self, val=False, val_expr=None, type_expr=None, **kwargs):
     assert_type(val, bool)
     super(Bool,
           self).__init__(val=val if val_expr is None else parse_expression(
               val_expr, type_expr),
                          val_expr=val_expr or {'prim': str(val)},
                          type_expr=type_expr or {'prim': self.prim},
                          **kwargs)
Exemple #4
0
 def __init__(self, val=b'', type_expr=None, val_expr=None, **kwargs):
     assert_type(val, bytes)
     super(Bytes,
           self).__init__(val=val if val_expr is None else parse_expression(
               val_expr, type_expr),
                          val_expr=val_expr or {'bytes': val.hex()},
                          type_expr=type_expr or {'prim': self.prim},
                          **kwargs)
Exemple #5
0
 def __init__(self, val=0, val_expr=None, type_expr=None, **kwargs):
     assert_type(val, int)
     assert isinstance(val, int)
     super(Int,
           self).__init__(val=val if val_expr is None else parse_expression(
               val_expr, type_expr),
                          val_expr=val_expr or {'int': str(val)},
                          type_expr=type_expr or {'prim': self.prim},
                          **kwargs)
Exemple #6
0
 def __str__(self):
     assert_type(self._val, str)
     return self._val
Exemple #7
0
 def __int__(self):
     assert_type(self._val, int)
     return self._val
Exemple #8
0
 def __getitem__(self, item):
     assert_type(item, int)
     return self.parse(val_expr=self.val_expr[item],
                       type_expr=self.type_expr['args'][0])
Exemple #9
0
 def __getitem__(self, item):
     assert_type(item, slice)
     return type(self)(self._val[item.start:item.stop])
Exemple #10
0
 def __bool__(self):
     assert_type(self._val, bool)
     return self._val
Exemple #11
0
 def __bytes__(self):
     assert_type(self._val, bytes)
     return self._val