def get_type(self, source):
        """
        Map python value types to Eve schema value types.

        :param source: value from source json field
        :return: eve schema type representing source type
        """
        type_mapper = {
            unicode: 'string',
            str: 'string',
            bool: 'boolean',
            int: 'integer',
            float: 'float',
            dict: 'dict',
            list: 'list',
            OrderedDict: 'dict',
            NoneType: 'null',
        }
        source_type = type(source)

        if type_mapper in source_type:
            eve_type = type_mapper[source_type]
        else:
            raise TypeError('Value types must be in [{0}]'.format(', '.join(type_mapper.values())))

        # Evegenie special strings
        if eve_type == 'string':
            if self.objectidregex.match(source):
                eve_type = 'objectid'
            elif self.intrangeregex.match(source):
                eve_type = 'integer'
            elif self.floatrangeregex.match(source):
                eve_type = 'float'

        return eve_type
dataset/ETHPy150Open drud/evegenie/evegenie/evegenie.py/EveGenie.get_type/swapped operands of `in`