def get_tag(self, key=None, category=None, obj=None, tagtype=None, global_search=False):
        global _Tag
        if not _Tag:
            from evennia.typeclasses.models import Tag as _Tag
        if global_search:
            # search all tags using the Tag model
            query = [("db_tagtype", tagtype)]
            if obj:
                query.append(("id", obj.id))
            if key:
                query.append(("db_key", key))
            if category:
                query.append(("db_category", category))
            return _Tag.objects.filter(**dict(query))
        else:
            # search only among tags stored on on this model
            query = [("tag__db_tagtype", tagtype)]
            if obj:
                query.append(("%s__id" % self.model.__name__.lower(), obj.id))
            if key:
                query.append(("tag__db_key", key))
            if category:
                query.append(("tag__db_category", category))
            return [th.tag for th in self.model.db_tags.through.objects.filter(**dict(query))]
look for .h the .cpp need
dataset/ETHPy150Open evennia/evennia/evennia/typeclasses/managers.py/TypedObjectManager.get_tag--crossover with--dataset/ETHPy150Open appcelerator-archive/poc-nodejs-desktop/Resources/nodejs/builds/linux/node/lib/node/wafadmin/Tools/ccroot.py/scan