Displaying differences for changeset |
@@ -68,10 +68,14 @@ |
def from_dict(d): |
v = Variable() |
- v.type = d['type'] |
- v.lower = d['lower'] |
- v.upper = d['upper'] |
- v.nbits = d.get('nbits', 0) |
+ v.type = d['type'].lower() |
+ if v.type in {'real', 'discrete'}: |
+ v.lower = d['lower'] |
+ v.upper = d['upper'] |
+ elif v.type in {'binary', 'boolean', 'permutation'}: |
+ v.nbits = d['nbits'] |
+ else: |
+ raise ValueError('Unrecognized type {0}!'.format(v.type)) |
return v |