code: def parse(self, declaration):
          
          declaration = declaration.strip()
          for regex, constructor in self._compiled:
              m = regex.match(declaration)
              if m:
                  return constructor(*m.groups())
          raise ValueError('Unable to parse type declaration', declaration)
docs: Parse sql type declaration, e.g. varchar(10) and return instance of corresponding type class,
          e.g. VarCharType(10)
  
          @param declaration: Sql declaration to parse, e.g. varchar(10)
          @return: instance of SqlTypeMetaclass