LibreOffice Module codemaker (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TypeManager Class Referencefinal

#include <typemanager.hxx>

Inheritance diagram for TypeManager:
[legend]
Collaboration diagram for TypeManager:
[legend]

Public Member Functions

 TypeManager ()
 
void loadProvider (OUString const &uri, bool primary)
 
bool foundAtPrimaryProvider (OUString const &name) const
 
codemaker::UnoType::Sort getSort (OUString const &name, rtl::Reference< unoidl::Entity > *entity=nullptr, rtl::Reference< unoidl::MapCursor > *cursor=nullptr) const
 
codemaker::UnoType::Sort decompose (std::u16string_view name, bool resolveTypedefs, OUString *nucleus, sal_Int32 *rank, std::vector< OUString > *arguments, rtl::Reference< unoidl::Entity > *entity) const
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Private Member Functions

virtual ~TypeManager () override
 

Private Attributes

rtl::Reference< unoidl::Managermanager_
 
std::vector< rtl::Reference< unoidl::Provider > > primaryProviders_
 

Additional Inherited Members

- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static void * operator new (std::size_t nSize)
 
static void * operator new (std::size_t nSize, std::nothrow_t const &rNothrow)
 
static void operator delete (void *pPtr)
 
static void operator delete (void *pPtr, std::nothrow_t const &rNothrow)
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 
- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

Definition at line 42 of file typemanager.hxx.

Constructor & Destructor Documentation

◆ TypeManager()

TypeManager::TypeManager ( )

Definition at line 32 of file typemanager.cxx.

References manager_.

◆ ~TypeManager()

TypeManager::~TypeManager ( )
overrideprivatevirtual

Definition at line 34 of file typemanager.cxx.

Member Function Documentation

◆ decompose()

codemaker::UnoType::Sort TypeManager::decompose ( std::u16string_view  name,
bool  resolveTypedefs,
OUString *  nucleus,
sal_Int32 *  rank,
std::vector< OUString > *  arguments,
rtl::Reference< unoidl::Entity > *  entity 
) const

◆ foundAtPrimaryProvider()

bool TypeManager::foundAtPrimaryProvider ( OUString const &  name) const

Definition at line 43 of file typemanager.cxx.

References manager_, name, and primaryProviders_.

◆ getSort()

codemaker::UnoType::Sort TypeManager::getSort ( OUString const &  name,
rtl::Reference< unoidl::Entity > *  entity = nullptr,
rtl::Reference< unoidl::MapCursor > *  cursor = nullptr 
) const

Definition at line 59 of file typemanager.cxx.

References codemaker::UnoType::AccumulationBasedService, codemaker::UnoType::Any, codemaker::UnoType::Boolean, codemaker::UnoType::Byte, codemaker::UnoType::Char, codemaker::UnoType::ConstantGroup, codemaker::UnoType::Double, codemaker::UnoType::Enum, codemaker::UnoType::Exception, codemaker::UnoType::Float, codemaker::UnoType::Hyper, codemaker::UnoType::InstantiatedPolymorphicStruct, codemaker::UnoType::Interface, codemaker::UnoType::InterfaceBasedSingleton, codemaker::UnoType::Long, manager_, codemaker::UnoType::Module, name, codemaker::UnoType::PlainStruct, codemaker::UnoType::PolymorphicStructTemplate, codemaker::UnoType::Sequence, codemaker::UnoType::ServiceBasedSingleton, codemaker::UnoType::Short, codemaker::UnoType::SingleInterfaceBasedService, unoidl::Entity::SORT_ACCUMULATION_BASED_SERVICE, unoidl::Entity::SORT_CONSTANT_GROUP, unoidl::Entity::SORT_ENUM_TYPE, unoidl::Entity::SORT_EXCEPTION_TYPE, unoidl::Entity::SORT_INTERFACE_BASED_SINGLETON, unoidl::Entity::SORT_INTERFACE_TYPE, unoidl::Entity::SORT_MODULE, unoidl::Entity::SORT_PLAIN_STRUCT_TYPE, unoidl::Entity::SORT_POLYMORPHIC_STRUCT_TYPE_TEMPLATE, unoidl::Entity::SORT_SERVICE_BASED_SINGLETON, unoidl::Entity::SORT_SINGLE_INTERFACE_BASED_SERVICE, unoidl::Entity::SORT_TYPEDEF, codemaker::UnoType::String, codemaker::UnoType::Type, codemaker::UnoType::Typedef, codemaker::UnoType::UnsignedHyper, codemaker::UnoType::UnsignedLong, codemaker::UnoType::UnsignedShort, and codemaker::UnoType::Void.

Referenced by decompose().

◆ loadProvider()

void TypeManager::loadProvider ( OUString const &  uri,
bool  primary 
)

Definition at line 36 of file typemanager.cxx.

References manager_, primary(), and primaryProviders_.

Member Data Documentation

◆ manager_

rtl::Reference< unoidl::Manager > TypeManager::manager_
private

Definition at line 62 of file typemanager.hxx.

Referenced by foundAtPrimaryProvider(), getSort(), and loadProvider().

◆ primaryProviders_

std::vector< rtl::Reference< unoidl::Provider > > TypeManager::primaryProviders_
private

Definition at line 63 of file typemanager.hxx.

Referenced by foundAtPrimaryProvider(), and loadProvider().


The documentation for this class was generated from the following files: