LibreOffice Module cli_ure (master) 1
Classes | Functions
cli_uno Namespace Reference

Classes

struct  Bridge
 An instance of Bridge represents exactly one mapping therefore either m_cli2uno or m_uno2cli is valid. More...
 
struct  BridgeRuntimeError
 
class  Cli_environment
 
struct  CliEnvHolder
 
struct  CliProxy
 
struct  Constants
 
union  largest
 
struct  Mapping
 
struct  rtl_mem
 
class  TypeDescr
 
class  UnoInterfaceInfo
 
class  UnoInterfaceProxy
 

Functions

System::Type loadCliType (System::String ^ typeName)
 
System::Type mapUnoType (typelib_TypeDescription const *pTD)
 
System::Type mapUnoType (typelib_TypeDescriptionReference const *pTD)
 
typelib_TypeDescriptionReference * mapCliType (System::Type^ cliType)
 Returns an acquired td. More...
 
OUString mapCliString (System::String ^ data)
 
System::String mapUnoString (rtl_uString const *data)
 Maps uno types to dot net types. More...
 
System::String mapUnoTypeName (rtl_uString const *typeName)
 Otherwise a leading "unoidl." is removed. More...
 
void SAL_CALL Mapping_acquire (uno_Mapping *mapping) SAL_THROW_EXTERN_C()
 
void SAL_CALL Mapping_release (uno_Mapping *mapping) SAL_THROW_EXTERN_C()
 
void SAL_CALL Mapping_cli2uno (uno_Mapping *mapping, void **ppOut, void *pIn, typelib_InterfaceTypeDescription *td) SAL_THROW_EXTERN_C()
 
void SAL_CALL Mapping_uno2cli (uno_Mapping *mapping, void **ppOut, void *pIn, typelib_InterfaceTypeDescription *td) SAL_THROW_EXTERN_C()
 
void SAL_CALL Bridge_free (uno_Mapping *mapping) SAL_THROW_EXTERN_C()
 
void SAL_CALL cli_env_disposing (uno_Environment *uno_cli_env) SAL_THROW_EXTERN_C()
 
SAL_DLLPUBLIC_EXPORT void SAL_CALL uno_initEnvironment (uno_Environment *uno_cli_env) SAL_THROW_EXTERN_C()
 
SAL_DLLPUBLIC_EXPORT void SAL_CALL uno_ext_getMapping (uno_Mapping **ppMapping, uno_Environment *pFrom, uno_Environment *pTo) SAL_THROW_EXTERN_C()
 
System::String mapUnoPolymorphicName (System::String^ unoName)
 For example, there is a uno type com.sun.star.Foo<char, long>. More...
 
OUString mapCliTypeName (System::String^ typeName)
 
System::String mapCliPolymorphicName (System::String^ unoName)
 For example, there is a type name such as com.sun.star.Foo<System.Char, System.Int32>. More...
 
System::String mapPolymorphicName (System::String^ unoName, bool bCliToUno)
 
std::unique_ptr< rtl_memseq_allocate (sal_Int32 nElements, sal_Int32 nSize)
 
System::Type loadCliType (rtl_uString *unoName)
 

Function Documentation

◆ Bridge_free()

void SAL_CALL cli_uno::Bridge_free ( uno_Mapping mapping)

Definition at line 146 of file cli_bridge.cxx.

References cli_uno::Mapping::m_bridge, and SAL_THROW_EXTERN_C.

Referenced by cli_uno::Bridge::acquire(), and uno_ext_getMapping().

◆ cli_env_disposing()

void SAL_CALL cli_uno::cli_env_disposing ( uno_Environment uno_cli_env)

Definition at line 241 of file cli_bridge.cxx.

References SAL_THROW_EXTERN_C.

Referenced by uno_initEnvironment().

◆ loadCliType() [1/2]

System::Type cli_uno::loadCliType ( rtl_uString *  unoName)
inline

Definition at line 136 of file cli_data.cxx.

References loadCliType(), and mapUnoTypeName().

◆ loadCliType() [2/2]

System::Type cli_uno::loadCliType ( System::String ^  typeName)

◆ mapCliPolymorphicName()

System::String cli_uno::mapCliPolymorphicName ( System::String^  unoName)
inline

For example, there is a type name such as com.sun.star.Foo<System.Char, System.Int32>.

The values in the type list are CLI types and are replaced by uno types, such as char, long, etc. The prefix unoidl remains.

Definition at line 542 of file cli_data.cxx.

References mapPolymorphicName().

Referenced by mapCliTypeName().

◆ mapCliString()

OUString cli_uno::mapCliString ( System::String ^  data)

◆ mapCliType()

typelib_TypeDescriptionReference * cli_uno::mapCliType ( System::Type^  cliType)

◆ mapCliTypeName()

OUString cli_uno::mapCliTypeName ( System::String^  typeName)

◆ Mapping_acquire()

void SAL_CALL cli_uno::Mapping_acquire ( uno_Mapping mapping)

◆ Mapping_cli2uno()

void SAL_CALL cli_uno::Mapping_cli2uno ( uno_Mapping mapping,
void **  ppOut,
void *  pIn,
typelib_InterfaceTypeDescription *  td 
)

◆ Mapping_release()

void SAL_CALL cli_uno::Mapping_release ( uno_Mapping mapping)

◆ Mapping_uno2cli()

void SAL_CALL cli_uno::Mapping_uno2cli ( uno_Mapping mapping,
void **  ppOut,
void *  pIn,
typelib_InterfaceTypeDescription *  td 
)

◆ mapPolymorphicName()

System::String cli_uno::mapPolymorphicName ( System::String^  unoName,
bool  bCliToUno 
)

Definition at line 547 of file cli_data.cxx.

References index, mapCliString(), mapCliTypeName(), and mapUnoTypeName().

Referenced by mapCliPolymorphicName(), and mapUnoPolymorphicName().

◆ mapUnoPolymorphicName()

System::String cli_uno::mapUnoPolymorphicName ( System::String^  unoName)
inline

For example, there is a uno type com.sun.star.Foo<char, long>.

The values in the type list are uno types and are replaced by cli types, such as System.Char, System.Int32, etc. The prefix unoidl is not added.

Definition at line 530 of file cli_data.cxx.

References mapPolymorphicName().

Referenced by mapUnoTypeName().

◆ mapUnoString()

System::String cli_uno::mapUnoString ( rtl_uString const *  data)
inline

◆ mapUnoType() [1/2]

System::Type cli_uno::mapUnoType ( typelib_TypeDescription const *  pTD)

◆ mapUnoType() [2/2]

System::Type cli_uno::mapUnoType ( typelib_TypeDescriptionReference const *  pTD)

◆ mapUnoTypeName()

System::String cli_uno::mapUnoTypeName ( rtl_uString const *  typeName)

◆ seq_allocate()

std::unique_ptr< rtl_mem > cli_uno::seq_allocate ( sal_Int32  nElements,
sal_Int32  nSize 
)
inline

Definition at line 53 of file cli_data.cxx.

References cli_uno::rtl_mem::allocate(), nElements, p, and SAL_SEQUENCE_HEADER_SIZE.

Referenced by cli_uno::Bridge::map_to_uno().

◆ uno_ext_getMapping()

SAL_DLLPUBLIC_EXPORT void SAL_CALL cli_uno::uno_ext_getMapping ( uno_Mapping **  ppMapping,
uno_Environment pFrom,
uno_Environment pTo 
)

◆ uno_initEnvironment()

SAL_DLLPUBLIC_EXPORT void SAL_CALL cli_uno::uno_initEnvironment ( uno_Environment uno_cli_env)