Skip to content

Commit

Permalink
Adds messages to ValueErrors in client_maps.py
Browse files Browse the repository at this point in the history
  • Loading branch information
Kurt Smith committed Mar 31, 2014
1 parent c6ce03a commit a4f36b6
Showing 1 changed file with 20 additions and 8 deletions.
28 changes: 20 additions & 8 deletions distarray/client_map.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,10 +80,13 @@ class ClientNoDistMap(ClientMapBase):
@classmethod
def from_dim_data(cls, dim_data_seq):
if len(dim_data_seq) != 1:
raise ValueError()
msg = ("Number of dimension dictionaries "
"non-unitary for non-distributed dimension.")
raise ValueError(msg)
dd = dim_data_seq[0]
if dd['dist_type'] != 'n':
raise ValueError()
msg = "Wrong dist_type (%r) for non-distributed map."
raise ValueError(msg % dd['dist_type'])
grid_size = dd['proc_grid_size']
size = dd['size']
return cls(size, grid_size)
Expand All @@ -105,11 +108,14 @@ def from_dim_data(cls, dim_data_seq):
self = cls.__new__(cls)
dd = dim_data_seq[0]
if dd['dist_type'] != 'b':
raise ValueError()
msg = "Wrong dist_type (%r) for block map."
raise ValueError(msg % dd['dist_type'])
self.size = dd['size']
self.grid_size = dd['proc_grid_size']
if self.grid_size != len(dim_data_seq):
raise ValueError()
msg = ("Number of dimension dictionaries (%r)"
"inconsistent with proc_grid_size (%r).")
raise ValueError(msg % (len(dim_data_seq), self.grid_size))
self.bounds = [(d['start'], d['stop']) for d in dim_data_seq]
return self

Expand All @@ -133,11 +139,14 @@ class ClientCyclicMap(ClientMapBase):
def from_dim_data(cls, dim_data_seq):
dd = dim_data_seq[0]
if dd['dist_type'] != 'c':
raise ValueError()
msg = "Wrong dist_type (%r) for cyclic map."
raise ValueError(msg % dd['dist_type'])
size = dd['size']
grid_size = dd['proc_grid_size']
if grid_size != len(dim_data_seq):
raise ValueError()
msg = ("Number of dimension dictionaries (%r)"
"inconsistent with proc_grid_size (%r).")
raise ValueError(msg % (len(dim_data_seq), grid_size))
return cls(size, grid_size)

def __init__(self, size, grid_size):
Expand All @@ -154,11 +163,14 @@ class ClientUnstructuredMap(ClientMapBase):
def from_dim_data(cls, dim_data_seq):
dd = dim_data_seq[0]
if dd['dist_type'] != 'u':
raise ValueError()
msg = "Wrong dist_type (%r) for unstructured map."
raise ValueError(msg % dd['dist_type'])
size = dd['size']
grid_size = dd['proc_grid_size']
if grid_size != len(dim_data_seq):
raise ValueError()
msg = ("Number of dimension dictionaries (%r)"
"inconsistent with proc_grid_size (%r).")
raise ValueError(msg % (len(dim_data_seq), grid_size))
return cls(size, grid_size)

def __init__(self, size, grid_size):
Expand Down

0 comments on commit a4f36b6

Please sign in to comment.