Source code for aergo.herapy.obj.abi

# -*- coding: utf-8 -*-

import copy
import json

from google.protobuf.json_format import MessageToJson


[docs]class Abi(): """ Abi stores a contract abi.""" def __init__(self, abi): self.__json = json.loads(MessageToJson(abi)) self.__version = self.__json.get('version', None) self.__language = self.__json.get('language', None) self.__functions = self.__json.get('functions', []) self.__state_variables = self.__json.get('stateVariables', []) @property def version(self): return self.__version @property def language(self): return self.__language @property def functions(self): return self.__functions @property def state_variables(self): return self.__state_variables
[docs] def json(self): return copy.deepcopy(self.__json)
def __str__(self): return json.dumps(self.json(), indent=2)