adding the breathe files
This commit is contained in:
55
doc/breathe/finder/doxygen/core.py
Normal file
55
doc/breathe/finder/doxygen/core.py
Normal file
@ -0,0 +1,55 @@
|
||||
|
||||
from . import index as indexfinder
|
||||
from . import compound as compoundfinder
|
||||
|
||||
|
||||
class CreateCompoundTypeSubFinder(object):
|
||||
|
||||
def __init__(self, parser_factory, matcher_factory):
|
||||
|
||||
self.parser_factory = parser_factory
|
||||
self.matcher_factory = matcher_factory
|
||||
|
||||
def __call__(self, project_info, *args):
|
||||
|
||||
compound_parser = self.parser_factory.create_compound_parser(project_info)
|
||||
return indexfinder.CompoundTypeSubItemFinder(self.matcher_factory, compound_parser,
|
||||
project_info, *args)
|
||||
|
||||
|
||||
class DoxygenItemFinderFactory(object):
|
||||
|
||||
def __init__(self, finders, project_info):
|
||||
|
||||
self.finders = finders
|
||||
self.project_info = project_info
|
||||
|
||||
def create_finder(self, data_object):
|
||||
|
||||
return self.finders[data_object.node_type](self.project_info, data_object, self)
|
||||
|
||||
|
||||
class DoxygenItemFinderFactoryCreator(object):
|
||||
|
||||
def __init__(self, parser_factory, filter_factory):
|
||||
|
||||
self.parser_factory = parser_factory
|
||||
self.filter_factory = filter_factory
|
||||
|
||||
def create_factory(self, project_info):
|
||||
|
||||
finders = {
|
||||
"doxygen": indexfinder.DoxygenTypeSubItemFinder,
|
||||
"compound": CreateCompoundTypeSubFinder(self.parser_factory, self.filter_factory),
|
||||
"member": indexfinder.MemberTypeSubItemFinder,
|
||||
"doxygendef": compoundfinder.DoxygenTypeSubItemFinder,
|
||||
"compounddef": compoundfinder.CompoundDefTypeSubItemFinder,
|
||||
"sectiondef": compoundfinder.SectionDefTypeSubItemFinder,
|
||||
"memberdef": compoundfinder.MemberDefTypeSubItemFinder,
|
||||
"ref": compoundfinder.RefTypeSubItemFinder,
|
||||
}
|
||||
|
||||
return DoxygenItemFinderFactory(finders, project_info)
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user