Zeth - Zerocash on Ethereum  0.8
Reference implementation of the Zeth protocol by Clearmatics
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
zeth.cli.utils.MixerDescription Class Reference

Public Member Functions

def __init__ (self, InstanceDescription mixer, Optional[InstanceDescription] token, Optional[str] permitted_dispatcher, Optional[str] vk_hash)
 
Dict[str, Any] to_json_dict (self)
 

Static Public Member Functions

MixerDescription from_json_dict (Dict[str, Any] json_dict)
 

Public Attributes

 mixer
 
 token
 
 permitted_dispatcher
 
 vk_hash
 

Detailed Description

Holds an InstanceDescription for the mixer contract, and optionally an
InstanceDescription for the token contract. When serialized to json, the
InstanceDescription for the mixer is held in the top-level object, so that
MixerDescription is compatible with a regular contract instance.

Definition at line 140 of file utils.py.

Constructor & Destructor Documentation

◆ __init__()

def zeth.cli.utils.MixerDescription.__init__ (   self,
InstanceDescription  mixer,
Optional[InstanceDescription token,
Optional[str]  permitted_dispatcher,
Optional[str]  vk_hash 
)

Definition at line 147 of file utils.py.

147  def __init__(
148  self,
149  mixer: InstanceDescription,
150  token: Optional[InstanceDescription],
151  permitted_dispatcher: Optional[str],
152  vk_hash: Optional[str]):
153  self.mixer = mixer
154  self.token = token
155  self.permitted_dispatcher = permitted_dispatcher
156  self.vk_hash = vk_hash
157 

Member Function Documentation

◆ from_json_dict()

MixerDescription zeth.cli.utils.MixerDescription.from_json_dict ( Dict[str, Any]  json_dict)
static

Definition at line 174 of file utils.py.

174  def from_json_dict(json_dict: Dict[str, Any]) -> MixerDescription:
175  zeth_mixer = json_dict["zeth_mixer"]
176 
177  mixer = InstanceDescription.from_json_dict(json_dict)
178  token_dict = cast(Optional[Dict[str, Any]], zeth_mixer.get("token", None))
179  token = InstanceDescription.from_json_dict(token_dict) \
180  if token_dict else None
181  permitted_dispatcher = \
182  cast(Optional[str], zeth_mixer.get("permitted_dispatcher", None))
183  vk_hash = cast(Optional[str], zeth_mixer.get("vk_hash", None))
184  return MixerDescription(mixer, token, permitted_dispatcher, vk_hash)
185 
186 

◆ to_json_dict()

Dict[str, Any] zeth.cli.utils.MixerDescription.to_json_dict (   self)

Definition at line 158 of file utils.py.

158  def to_json_dict(self) -> Dict[str, Any]:
159  # Create an InstanceDescription JSON object, adding a "zeth_mixer"
160  # attribute for the extra data.
161  json_dict = self.mixer.to_json_dict()
162 
163  zeth_mixer: Dict[str, Any] = {}
164  if self.token:
165  zeth_mixer["token"] = self.token.to_json_dict()
166  if self.permitted_dispatcher:
167  zeth_mixer["permitted_dispatcher"] = self.permitted_dispatcher
168  if self.vk_hash:
169  zeth_mixer["vk_hash"] = self.vk_hash
170  json_dict["zeth_mixer"] = zeth_mixer
171  return json_dict
172 
Here is the caller graph for this function:

Member Data Documentation

◆ mixer

zeth.cli.utils.MixerDescription.mixer

Definition at line 148 of file utils.py.

◆ permitted_dispatcher

zeth.cli.utils.MixerDescription.permitted_dispatcher

Definition at line 150 of file utils.py.

◆ token

zeth.cli.utils.MixerDescription.token

Definition at line 149 of file utils.py.

◆ vk_hash

zeth.cli.utils.MixerDescription.vk_hash

Definition at line 151 of file utils.py.


The documentation for this class was generated from the following file: