23class Cursor:
public MapCursor {
30 virtual ~Cursor() noexcept
override {}
34 std::map< OUString, rtl::Reference<Entity> >
const &
map_;
35 std::map< OUString, rtl::Reference<Entity> >::const_iterator
iterator_;
39 assert(
name !=
nullptr);
49class Module:
public ModuleEntity {
53 std::map< OUString, rtl::Reference<Entity> >
map;
56 virtual ~Module() noexcept
override {}
58 virtual std::vector<OUString> getMemberNames()
const override;
64std::vector<OUString> Module::getMemberNames()
const {
65 std::vector<OUString> names;
67 names.push_back(
i.first);
78 if (!
parse(uri, &data)) {
83 assert(
i.second.entity.is());
85 std::map< OUString, rtl::Reference<Entity> > *
map = &
rootMap_;
86 for (sal_Int32 j = 0;;) {
87 OUString id(
i.first.getToken(0,
'.', j));
89 map->insert(std::make_pair(
id,
i.second.entity));
92 std::map< OUString, rtl::Reference<Entity> >::const_iterator k(
94 if (k ==
map->end()) {
95 k =
map->insert(std::make_pair(
id,
new Module)).first;
111 std::map< OUString, rtl::Reference<Entity> >
const *
map = &
rootMap_;
112 for (sal_Int32
i = 0;;) {
113 OUString id(
name.getToken(0,
'.',
i));
114 std::map< OUString, rtl::Reference<Entity> >::const_iterator j(
116 if (j ==
map->end()) {
125 Module * mod =
dynamic_cast< Module *
>(j->second.get());
126 assert(mod !=
nullptr);
virtual ~SourceFileProvider() noexcept override
virtual rtl::Reference< MapCursor > createRootCursor() const override
SourceFileProvider(rtl::Reference< Manager > const &manager, OUString const &uri)
std::map< OUString, rtl::Reference< Entity > > rootMap_
virtual rtl::Reference< Entity > findEntity(OUString const &name) const override
rtl::Reference< ParseManager > manager
enumrange< T >::Iterator begin(enumrange< T >)
bool parse(OUString const &uri, SourceProviderScannerData *data)
std::map< OUString, rtl::Reference< Entity > >::const_iterator iterator_
std::map< OUString, rtl::Reference< Entity > > map
std::map< OUString, rtl::Reference< Entity > > const & map_
std::map< OUString, SourceProviderEntity > entities