LibreOffice Module codemaker (master) 1
Enumerations | Functions
codemaker::UnoType Namespace Reference

Enumerations

enum class  Sort {
  Void ,
  Boolean ,
  Byte ,
  Short ,
  UnsignedShort ,
  Long ,
  UnsignedLong ,
  Hyper ,
  UnsignedHyper ,
  Float ,
  Double ,
  Char ,
  String ,
  Type ,
  Any ,
  Sequence ,
  Module ,
  Enum ,
  PlainStruct ,
  PolymorphicStructTemplate ,
  InstantiatedPolymorphicStruct ,
  Exception ,
  Interface ,
  Typedef ,
  ConstantGroup ,
  SingleInterfaceBasedService ,
  AccumulationBasedService ,
  InterfaceBasedSingleton ,
  ServiceBasedSingleton
}
 An enumeration of all the sorts of relevant UNOIDL entities. More...
 

Functions

rtl::OString decompose (rtl::OString const &type, sal_Int32 *rank=nullptr, std::vector< rtl::OString > *arguments=nullptr)
 Decomposes a UNO type name or UNO type registry name. More...
 

Enumeration Type Documentation

◆ Sort

enum class codemaker::UnoType::Sort
strong

An enumeration of all the sorts of relevant UNOIDL entities.

Enumerator
Void 
Boolean 
Byte 
Short 
UnsignedShort 
Long 
UnsignedLong 
Hyper 
UnsignedHyper 
Float 
Double 
Char 
String 
Type 
Any 
Sequence 
Module 
Enum 
PlainStruct 
PolymorphicStructTemplate 
InstantiatedPolymorphicStruct 
Exception 
Interface 
Typedef 
ConstantGroup 
SingleInterfaceBasedService 
AccumulationBasedService 
InterfaceBasedSingleton 
ServiceBasedSingleton 

Definition at line 33 of file unotype.hxx.

Function Documentation

◆ decompose()

rtl::OString codemaker::UnoType::decompose ( rtl::OString const &  type,
sal_Int32 *  rank = nullptr,
std::vector< rtl::OString > *  arguments = nullptr 
)

Decomposes a UNO type name or UNO type registry name.

Parameters
typea binary UNO type name or UNO type registry name
rankif non-null, returns the rank of the denoted UNO type (which is zero for any given type that does not denote a UNO sequence type)
argumentsif non-null, the type arguments are stripped from an instantiated polymorphic struct type and returned via this parameter (in the correct order); if null, type arguments are not stripped from instantiated polymorphic struct types
Returns
the base part of the given type

Referenced by codemaker::cppumaker::Includes::add(), TypeManager::decompose(), and codemaker::cppumaker::Dependencies::insert().