コード例 #1
0
ファイル: Result.py プロジェクト: CruiseDevice/coala
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath and _dict['diffs']:
         _dict['diffs'] = {relpath(file): diff
                           for file, diff in _dict['diffs'].items()}
     _dict['aspect'] = type(self.aspect).__qualname__
     return _dict
コード例 #2
0
ファイル: Bear.py プロジェクト: anmol-1602/coala
 def __json__(cls):
     """
     Override JSON export of ``Bear`` object.
     """
     # json cannot serialize properties, so drop them
     _dict = {
         key: value
         for key, value in get_public_members(cls).items()
         if not isinstance(value, property)
     }
     metadata = cls.get_metadata()
     non_optional_params = metadata.non_optional_params
     optional_params = metadata.optional_params
     _dict['metadata'] = {
         'desc':
         metadata.desc,
         'non_optional_params': ({
             param: non_optional_params[param][0]
         } for param in non_optional_params),
         'optional_params': ({
             param: optional_params[param][0]
         } for param in optional_params)
     }
     if hasattr(cls, 'languages'):
         _dict['languages'] = (str(language) for language in cls.languages)
     return _dict
コード例 #3
0
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath and _dict['diffs']:
         _dict['diffs'] = {relpath(file): diff
                           for file, diff in _dict['diffs'].items()}
     _dict['aspect'] = type(self.aspect).__qualname__
     return _dict
コード例 #4
0
    def __json__(cls):
        """
        Override JSON export of ``Bear`` class.
        """
        # Those members get duplicated if they aren't excluded because they
        # exist also as fields.
        excluded_members = {'can_detect', 'maintainers', 'maintainers_emails'}

        # json cannot serialize properties, so drop them
        data = {
            key: value
            for key, value in get_public_members(cls).items()
            if not isinstance(value, property) and key not in excluded_members}

        metadata = cls.get_metadata()
        non_optional_params = metadata.non_optional_params
        optional_params = metadata.optional_params
        data['metadata'] = {
            'desc': metadata.desc,
            'non_optional_params': {param: non_optional_params[param][0]
                                    for param in non_optional_params},
            'optional_params': {param: optional_params[param][0]
                                for param in optional_params}}

        return data
コード例 #5
0
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath and _dict['diffs']:
         _dict['diffs'] = {
             relpath(file): diff
             for file, diff in _dict['diffs'].items()
         }
     return _dict
コード例 #6
0
ファイル: Bear.py プロジェクト: srisankethu/coala
 def __json__(cls):
     """
     Override JSON export of ``Bear`` object.
     """
     # json cannot serialize properties, so drop them
     _dict = {key: value for key, value in get_public_members(cls).items() if not isinstance(value, property)}
     metadata = cls.get_metadata()
     non_optional_params = metadata.non_optional_params
     optional_params = metadata.optional_params
     _dict["metadata"] = {
         "desc": metadata.desc,
         "non_optional_params": ({param: non_optional_params[param][0]} for param in non_optional_params),
         "optional_params": ({param: optional_params[param][0]} for param in optional_params),
     }
     return _dict
コード例 #7
0
ファイル: Bear.py プロジェクト: Anmolbansal1/coala
 def __json__(cls):
     """
     Override JSON export of ``Bear`` object.
     """
     # json cannot serialize properties, so drop them
     _dict = {key: value for key, value in get_public_members(cls).items()
              if not isinstance(value, property)}
     metadata = cls.get_metadata()
     non_optional_params = metadata.non_optional_params
     optional_params = metadata.optional_params
     _dict['metadata'] = {
         'desc': metadata.desc,
         'non_optional_params': ({param: non_optional_params[param][0]}
                                 for param in non_optional_params),
         'optional_params': ({param: optional_params[param][0]}
                             for param in optional_params)}
     if hasattr(cls, 'languages'):
         _dict['languages'] = (str(language) for language in cls.languages)
     return _dict
コード例 #8
0
ファイル: JSONEncoder.py プロジェクト: zmyer/coala
        def default(self, obj):
            if hasattr(obj, "__json__"):
                fdata = FunctionMetadata.from_function(obj.__json__)
                params = self._filter_params(
                    fdata.optional_params, fdata.non_optional_params)
                return obj.__json__(**params)
            elif isinstance(obj, collections.Iterable):
                return list(obj)
            elif isinstance(obj, datetime):
                return obj.isoformat()
            elif hasattr(obj, "__getitem__") and hasattr(obj, "keys"):
                return dict(obj)
            elif hasattr(obj, "__dict__"):
                return {member: getattr(obj, member)
                        for member in get_public_members(obj)}
            elif isinstance(obj, re._pattern_type):
                return obj.pattern

            return json.JSONEncoder.default(self, obj)
コード例 #9
0
ファイル: Bear.py プロジェクト: abhiroyg/coala
    def __json__(cls):
        """
        Override JSON export of ``Bear`` object.
        """
        _dict = get_public_members(cls)
        metadata = cls.get_metadata()
        non_optional_params = metadata.non_optional_params
        optional_params = metadata.optional_params
        _dict["metadata"] = {
            "desc": metadata.desc,
            "non_optional_params": ({param: non_optional_params[param][0]}
                                    for param in non_optional_params),
            "optional_params": ({param: optional_params[param][0]}
                                for param in optional_params)}

        # Delete attributes that cannot be serialized
        unserializable_attributes = ["new_result", "printer"]
        for attribute in unserializable_attributes:
            _dict.pop(attribute, None)
        return _dict
コード例 #10
0
ファイル: Bear.py プロジェクト: ramnes/coala
    def __json__(cls):
        """
        Override JSON export of ``Bear`` object.
        """
        _dict = get_public_members(cls)
        metadata = cls.get_metadata()
        non_optional_params = metadata.non_optional_params
        optional_params = metadata.optional_params
        _dict["metadata"] = {
            "desc": metadata.desc,
            "non_optional_params": ({param: non_optional_params[param][0]}
                                    for param in non_optional_params),
            "optional_params": ({param: optional_params[param][0]}
                                for param in optional_params)}

        # Delete attributes that cannot be serialized
        unserializable_attributes = ["new_result", "printer"]
        for attribute in unserializable_attributes:
            _dict.pop(attribute, None)
        return _dict
コード例 #11
0
ファイル: Bear.py プロジェクト: userzimmermann/coala
 def __json__(cls):
     """
     Override JSON export of ``Bear`` object.
     """
     # json cannot serialize properties, so drop them
     _dict = {
         key: value
         for key, value in get_public_members(cls).items()
         if not isinstance(value, property)
     }
     metadata = cls.get_metadata()
     non_optional_params = metadata.non_optional_params
     optional_params = metadata.optional_params
     _dict["metadata"] = {
         "desc":
         metadata.desc,
         "non_optional_params": ({
             param: non_optional_params[param][0]
         } for param in non_optional_params),
         "optional_params": ({
             param: optional_params[param][0]
         } for param in optional_params)
     }
     return _dict
コード例 #12
0
ファイル: SourceRange.py プロジェクト: sils1297/coala
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath:
         _dict['file'] = relpath(_dict['file'])
     return _dict
コード例 #13
0
ファイル: Result.py プロジェクト: RaitoBezarius/coala
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath and _dict['diffs']:
         _dict['diffs'] = {relpath(file): diff
                           for file, diff in _dict['diffs'].items()}
     return _dict
コード例 #14
0
ファイル: SourcePosition.py プロジェクト: MTnes/avskr2.0
 def __json__(self, use_relpath=False):
     _dict = get_public_members(self)
     if use_relpath:
         _dict['file'] = relpath(_dict['file'])
     return _dict