demangle {Rcpp} | R Documentation

## c++ type information

### Description

`demangle` gives the demangled type, `sizeof` its size (in bytes).

### Usage

        demangle(type = "int", ...)
        sizeof(type = "int", ...)

### Arguments

`type` | The type we want to demangle
`...` | Further argument for `cppFunction`

### Details

The following function is compiled and invoked:

            SEXP demangle_this_type(){
                typedef
                return wrap( DEMANGLE(type) ) ;
            }

            SEXP sizeof_this_type(){
                typedef
                return wrap( sizeof(type) ) ;
            }

`DEMANGLE` is a macro in Rcpp that does the work.

### Value

The demangled type, as a string.

### Note

We only know how to demangle with gcc. If you know how to demangle types with your compiler, let us know.

### Author(s)

Romain Francois <romain@r-enthusiasts.com>

### References

See this chapter from the GNU C++ library manual.

### See Also

`cppFunction` is used to compile the function `demangle` creates.

### Examples

    ## Not run:
        demangle( "int64_t" )
        demangle( "uint64_t" )

        demangle( "NumericVector" )
        demangle( "std::map<std::string,double>" )

        sizeof( "long" )
        sizeof( "long long" )

    ## End(Not run)

[Package Rcpp version 0.12.13 Index]