xmlclass/xmlclass.py
changeset 1764 d5df428640ff
parent 1763 bcc07ff2362c
child 1765 ccf59c1f0b45
equal deleted inserted replaced
1763:bcc07ff2362c 1764:d5df428640ff
   111     used is not supported by xmlclass yet
   111     used is not supported by xmlclass yet
   112     @param type: data type
   112     @param type: data type
   113     @return: function generated
   113     @return: function generated
   114     """
   114     """
   115     def GetUnknownValue(attr):
   115     def GetUnknownValue(attr):
   116         raise ValueError("\"%s\" type isn't supported by \"xmlclass\" yet!" % \
   116         raise ValueError("\"%s\" type isn't supported by \"xmlclass\" yet!" % type)
   117                          type)
       
   118     return GetUnknownValue
   117     return GetUnknownValue
   119 
   118 
   120 
   119 
   121 def getIndent(indent, balise):
   120 def getIndent(indent, balise):
   122     """
   121     """
   222             # TODO: permit to write value like 1E2
   221             # TODO: permit to write value like 1E2
   223             value = int(value)
   222             value = int(value)
   224         except:
   223         except:
   225             raise ValueError("\"%s\" isn't a valid integer!" % value)
   224             raise ValueError("\"%s\" isn't a valid integer!" % value)
   226         if minInclusive is not None and value < minInclusive:
   225         if minInclusive is not None and value < minInclusive:
   227             raise ValueError("\"%d\" isn't greater or equal to %d!" % \
   226             raise ValueError("\"%d\" isn't greater or equal to %d!" %
   228                              (value, minInclusive))
   227                              (value, minInclusive))
   229         if maxInclusive is not None and value > maxInclusive:
   228         if maxInclusive is not None and value > maxInclusive:
   230             raise ValueError("\"%d\" isn't lesser or equal to %d!" % \
   229             raise ValueError("\"%d\" isn't lesser or equal to %d!" %
   231                              (value, maxInclusive))
   230                              (value, maxInclusive))
   232         if minExclusive is not None and value <= minExclusive:
   231         if minExclusive is not None and value <= minExclusive:
   233             raise ValueError("\"%d\" isn't greater than %d!" % \
   232             raise ValueError("\"%d\" isn't greater than %d!" %
   234                              (value, minExclusive))
   233                              (value, minExclusive))
   235         if maxExclusive is not None and value >= maxExclusive:
   234         if maxExclusive is not None and value >= maxExclusive:
   236             raise ValueError("\"%d\" isn't lesser than %d!" % \
   235             raise ValueError("\"%d\" isn't lesser than %d!" %
   237                              (value, maxExclusive))
   236                              (value, maxExclusive))
   238         return value
   237         return value
   239     return GetInteger
   238     return GetInteger
   240 
   239 
   241 
   240 
   442         else:
   441         else:
   443             value = attr
   442             value = attr
   444         if value in list:
   443         if value in list:
   445             return value
   444             return value
   446         else:
   445         else:
   447             raise ValueError("\"%s\" isn't a valid value for %s!" % \
   446             raise ValueError(
   448                              (value, type))
   447                 "\"%s\" isn't a valid value for %s!" % (value, type))
   449     return GetEnumerated
   448     return GetEnumerated
   450 
   449 
   451 
   450 
   452 def GetNamespaces(attr, extract=True):
   451 def GetNamespaces(attr, extract=True):
   453     """
   452     """
   504             values = []
   503             values = []
   505             for item in value.split(" "):
   504             for item in value.split(" "):
   506                 if item in list:
   505                 if item in list:
   507                     values.append(item)
   506                     values.append(item)
   508                 else:
   507                 else:
   509                     raise ValueError("\"%s\" isn't a valid value for %s!" % \
   508                     raise ValueError(
   510                                      (value, type))
   509                         "\"%s\" isn't a valid value for %s!" % (value, type))
   511             return values
   510             return values
   512     return GetLists
   511     return GetLists
   513 
   512 
   514 
   513 
   515 def GenerateModelNameListExtraction(type, model):
   514 def GenerateModelNameListExtraction(type, model):
   536         for item in value.split(" "):
   535         for item in value.split(" "):
   537             result = model.match(item)
   536             result = model.match(item)
   538             if result is not None:
   537             if result is not None:
   539                 values.append(item)
   538                 values.append(item)
   540             else:
   539             else:
   541                 raise ValueError("\"%s\" isn't a valid value for %s!" % \
   540                 raise ValueError("\"%s\" isn't a valid value for %s!" % (value, type))
   542                                  (value, type))
       
   543         return values
   541         return values
   544     return GetModelNameList
   542     return GetModelNameList
   545 
   543 
   546 
   544 
   547 def GenerateAnyInfos(infos):
   545 def GenerateAnyInfos(infos):