LibreOffice Module codemaker (master) 1
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
codemaker::cppumaker::Dependencies Class Reference

A simple class to track which other entities a given entity depends on. More...

#include <dependencies.hxx>

Collaboration diagram for codemaker::cppumaker::Dependencies:
[legend]

Public Types

enum  Kind {
  KIND_NORMAL ,
  KIND_BASE ,
  KIND_EXCEPTION
}
 Flags to distinguish whether one entity depends on another entity because the second is a direct base of the first or an exception thrown by the first. More...
 
typedef std::map< OUString, KindMap
 

Public Member Functions

 Dependencies (rtl::Reference< TypeManager > const &manager, OUString const &name)
 Constructs the dependencies for a given entity. More...
 
 ~Dependencies ()
 
 Dependencies (const Dependencies &)=delete
 
const Dependenciesoperator= (const Dependencies &)=delete
 
Map const & getMap () const
 
bool hasBooleanDependency () const
 
bool hasByteDependency () const
 
bool hasShortDependency () const
 
bool hasUnsignedShortDependency () const
 
bool hasLongDependency () const
 
bool hasUnsignedLongDependency () const
 
bool hasHyperDependency () const
 
bool hasUnsignedHyperDependency () const
 
bool hasCharDependency () const
 
bool hasStringDependency () const
 
bool hasTypeDependency () const
 
bool hasAnyDependency () const
 
bool hasSequenceDependency () const
 

Private Member Functions

void insert (std::u16string_view name, Kind kind)
 

Private Attributes

rtl::Reference< TypeManagerm_manager
 
Map m_map
 
bool m_voidDependency
 
bool m_booleanDependency
 
bool m_byteDependency
 
bool m_shortDependency
 
bool m_unsignedShortDependency
 
bool m_longDependency
 
bool m_unsignedLongDependency
 
bool m_hyperDependency
 
bool m_unsignedHyperDependency
 
bool m_charDependency
 
bool m_stringDependency
 
bool m_typeDependency
 
bool m_anyDependency
 
bool m_sequenceDependency
 

Detailed Description

A simple class to track which other entities a given entity depends on.

This class is not multi-thread–safe.

Definition at line 41 of file dependencies.hxx.

Member Typedef Documentation

◆ Map

Definition at line 50 of file dependencies.hxx.

Member Enumeration Documentation

◆ Kind

Flags to distinguish whether one entity depends on another entity because the second is a direct base of the first or an exception thrown by the first.

Enumerator
KIND_NORMAL 
KIND_BASE 
KIND_EXCEPTION 

Definition at line 48 of file dependencies.hxx.

Constructor & Destructor Documentation

◆ Dependencies() [1/2]

codemaker::cppumaker::Dependencies::Dependencies ( rtl::Reference< TypeManager > const &  manager,
OUString const &  name 
)

Constructs the dependencies for a given entity.

Parameters
managera type manager, to obtain information about the given entity; must not be null
namethe UNOIDL name of an enum type, plain struct type, polymorphic struct type template, exception type, interface type, typedef, constant group, single-interface–based service, or interface-based singleton entity

Definition at line 40 of file dependencies.cxx.

References codemaker::UnoType::ConstantGroup, codemaker::UnoType::Enum, ex, codemaker::UnoType::Exception, unoidl::TypedefEntity::getType(), insert(), codemaker::UnoType::Interface, codemaker::UnoType::InterfaceBasedSingleton, KIND_BASE, KIND_EXCEPTION, KIND_NORMAL, m_booleanDependency, m_byteDependency, m_hyperDependency, m_longDependency, m_manager, m_sequenceDependency, m_shortDependency, m_unsignedHyperDependency, m_unsignedLongDependency, m_unsignedShortDependency, manager, name, codemaker::UnoType::PlainStruct, codemaker::UnoType::PolymorphicStructTemplate, unoidl::SingleInterfaceBasedServiceEntity::Constructor::Parameter::rest, codemaker::UnoType::SingleInterfaceBasedService, unoidl::InterfaceTypeEntity::Method::Parameter::type, unoidl::SingleInterfaceBasedServiceEntity::Constructor::Parameter::type, unoidl::ConstantValue::TYPE_BOOLEAN, unoidl::ConstantValue::TYPE_BYTE, unoidl::ConstantValue::TYPE_DOUBLE, unoidl::ConstantValue::TYPE_FLOAT, unoidl::ConstantValue::TYPE_HYPER, unoidl::ConstantValue::TYPE_LONG, unoidl::ConstantValue::TYPE_SHORT, unoidl::ConstantValue::TYPE_UNSIGNED_HYPER, unoidl::ConstantValue::TYPE_UNSIGNED_LONG, unoidl::ConstantValue::TYPE_UNSIGNED_SHORT, codemaker::UnoType::Typedef, and u.

◆ ~Dependencies()

codemaker::cppumaker::Dependencies::~Dependencies ( )

Definition at line 213 of file dependencies.cxx.

◆ Dependencies() [2/2]

codemaker::cppumaker::Dependencies::Dependencies ( const Dependencies )
delete

Member Function Documentation

◆ getMap()

Map const & codemaker::cppumaker::Dependencies::getMap ( ) const
inline

Definition at line 72 of file dependencies.hxx.

References m_map.

◆ hasAnyDependency()

bool codemaker::cppumaker::Dependencies::hasAnyDependency ( ) const
inline

Definition at line 99 of file dependencies.hxx.

References m_anyDependency.

◆ hasBooleanDependency()

bool codemaker::cppumaker::Dependencies::hasBooleanDependency ( ) const
inline

Definition at line 74 of file dependencies.hxx.

References m_booleanDependency.

◆ hasByteDependency()

bool codemaker::cppumaker::Dependencies::hasByteDependency ( ) const
inline

Definition at line 76 of file dependencies.hxx.

References m_byteDependency.

◆ hasCharDependency()

bool codemaker::cppumaker::Dependencies::hasCharDependency ( ) const
inline

Definition at line 93 of file dependencies.hxx.

References m_charDependency.

◆ hasHyperDependency()

bool codemaker::cppumaker::Dependencies::hasHyperDependency ( ) const
inline

Definition at line 88 of file dependencies.hxx.

References m_hyperDependency.

◆ hasLongDependency()

bool codemaker::cppumaker::Dependencies::hasLongDependency ( ) const
inline

Definition at line 83 of file dependencies.hxx.

References m_longDependency.

◆ hasSequenceDependency()

bool codemaker::cppumaker::Dependencies::hasSequenceDependency ( ) const
inline

Definition at line 101 of file dependencies.hxx.

References m_sequenceDependency.

◆ hasShortDependency()

bool codemaker::cppumaker::Dependencies::hasShortDependency ( ) const
inline

Definition at line 78 of file dependencies.hxx.

References m_shortDependency.

◆ hasStringDependency()

bool codemaker::cppumaker::Dependencies::hasStringDependency ( ) const
inline

Definition at line 95 of file dependencies.hxx.

References m_stringDependency.

◆ hasTypeDependency()

bool codemaker::cppumaker::Dependencies::hasTypeDependency ( ) const
inline

Definition at line 97 of file dependencies.hxx.

References m_typeDependency.

◆ hasUnsignedHyperDependency()

bool codemaker::cppumaker::Dependencies::hasUnsignedHyperDependency ( ) const
inline

Definition at line 90 of file dependencies.hxx.

References m_unsignedHyperDependency.

◆ hasUnsignedLongDependency()

bool codemaker::cppumaker::Dependencies::hasUnsignedLongDependency ( ) const
inline

Definition at line 85 of file dependencies.hxx.

References m_unsignedLongDependency.

◆ hasUnsignedShortDependency()

bool codemaker::cppumaker::Dependencies::hasUnsignedShortDependency ( ) const
inline

Definition at line 80 of file dependencies.hxx.

References m_unsignedShortDependency.

◆ insert()

void codemaker::cppumaker::Dependencies::insert ( std::u16string_view  name,
Kind  kind 
)
private

◆ operator=()

const Dependencies & codemaker::cppumaker::Dependencies::operator= ( const Dependencies )
delete

Member Data Documentation

◆ m_anyDependency

bool codemaker::cppumaker::Dependencies::m_anyDependency
private

Definition at line 120 of file dependencies.hxx.

Referenced by hasAnyDependency(), and insert().

◆ m_booleanDependency

bool codemaker::cppumaker::Dependencies::m_booleanDependency
private

Definition at line 109 of file dependencies.hxx.

Referenced by Dependencies(), hasBooleanDependency(), and insert().

◆ m_byteDependency

bool codemaker::cppumaker::Dependencies::m_byteDependency
private

Definition at line 110 of file dependencies.hxx.

Referenced by Dependencies(), hasByteDependency(), and insert().

◆ m_charDependency

bool codemaker::cppumaker::Dependencies::m_charDependency
private

Definition at line 117 of file dependencies.hxx.

Referenced by hasCharDependency(), and insert().

◆ m_hyperDependency

bool codemaker::cppumaker::Dependencies::m_hyperDependency
private

Definition at line 115 of file dependencies.hxx.

Referenced by Dependencies(), hasHyperDependency(), and insert().

◆ m_longDependency

bool codemaker::cppumaker::Dependencies::m_longDependency
private

Definition at line 113 of file dependencies.hxx.

Referenced by Dependencies(), hasLongDependency(), and insert().

◆ m_manager

rtl::Reference< TypeManager > codemaker::cppumaker::Dependencies::m_manager
private

Definition at line 106 of file dependencies.hxx.

Referenced by Dependencies(), and insert().

◆ m_map

Map codemaker::cppumaker::Dependencies::m_map
private

Definition at line 107 of file dependencies.hxx.

Referenced by getMap(), and insert().

◆ m_sequenceDependency

bool codemaker::cppumaker::Dependencies::m_sequenceDependency
private

Definition at line 121 of file dependencies.hxx.

Referenced by Dependencies(), hasSequenceDependency(), and insert().

◆ m_shortDependency

bool codemaker::cppumaker::Dependencies::m_shortDependency
private

Definition at line 111 of file dependencies.hxx.

Referenced by Dependencies(), hasShortDependency(), and insert().

◆ m_stringDependency

bool codemaker::cppumaker::Dependencies::m_stringDependency
private

Definition at line 118 of file dependencies.hxx.

Referenced by hasStringDependency(), and insert().

◆ m_typeDependency

bool codemaker::cppumaker::Dependencies::m_typeDependency
private

Definition at line 119 of file dependencies.hxx.

Referenced by hasTypeDependency(), and insert().

◆ m_unsignedHyperDependency

bool codemaker::cppumaker::Dependencies::m_unsignedHyperDependency
private

Definition at line 116 of file dependencies.hxx.

Referenced by Dependencies(), hasUnsignedHyperDependency(), and insert().

◆ m_unsignedLongDependency

bool codemaker::cppumaker::Dependencies::m_unsignedLongDependency
private

Definition at line 114 of file dependencies.hxx.

Referenced by Dependencies(), hasUnsignedLongDependency(), and insert().

◆ m_unsignedShortDependency

bool codemaker::cppumaker::Dependencies::m_unsignedShortDependency
private

Definition at line 112 of file dependencies.hxx.

Referenced by Dependencies(), hasUnsignedShortDependency(), and insert().

◆ m_voidDependency

bool codemaker::cppumaker::Dependencies::m_voidDependency
private

Definition at line 108 of file dependencies.hxx.

Referenced by insert().


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