Advertisement
zamotivator

Untitled

May 10th, 2012
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. def check_argument_type(class_name, type_value, type_name):
  2. def result(var_value, var_name):
  3. if type(var_value) != type_value:
  4. raise TypeError("%s: expected %s as %s, but received %s" %
  5. (class_name, type_name, var_name, str(var_value)))
  6. return result
  7.  
  8. def check_argument_type_cond(class_name, cond_value, cond_desc, actual):
  9. if not cond_value:
  10. raise TypeError("%s: expected %s, but %s" % (class_name, cond_desc, actual))
  11.  
  12. def check_argument_value_cond(class_name, cond_value, cond_desc, actual):
  13. if not cond_value:
  14. raise ValueError("%s: expected %s, but %s" % (class_name, cond_desc, actual))
  15.  
  16.  
  17. def Bound(object):
  18. def __init__(self, value, overlap, has_overlap):
  19. check= check_argument_type("Bound", int, "int")
  20. check(value, "value")
  21. check(overlap, "overlap")
  22. check_argument_type("Bound", bool, "bool")(has_overlap, "has_overlap")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement