> For the complete documentation index, see [llms.txt](https://docs.play.cronos.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.play.cronos.org/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md).

# rust::cxxbridge1::Box

[More...](#detailed-description)

`#include <cxx.h>`

## Public Classes

|       | Name                                                                                 |
| ----- | ------------------------------------------------------------------------------------ |
| class | [**allocation**](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box_1_1allocation.md) |
| class | [**uninit**](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box_1_1uninit.md)         |

## Public Types

|                                                                               | Name                                       |
| ----------------------------------------------------------------------------- | ------------------------------------------ |
| using T                                                                       | [**element\_type**](#using-element-type)   |
| using typename std::add\_pointer< typename std::add\_const< T >::type >::type | [**const\_pointer**](#using-const-pointer) |
| using typename std::add\_pointer< T >::type                                   | [**pointer**](#using-pointer)              |
| using [element\_type](#using-element-type)                                    | [**value\_type**](#using-value-type)       |
| using T                                                                       | [**element\_type**](#using-element-type)   |
| using typename std::add\_pointer< typename std::add\_const< T >::type >::type | [**const\_pointer**](#using-const-pointer) |
| using typename std::add\_pointer< T >::type                                   | [**pointer**](#using-pointer)              |
| using [element\_type](#using-element-type)                                    | [**value\_type**](#using-value-type)       |
| using T                                                                       | [**element\_type**](#using-element-type)   |
| using typename std::add\_pointer< typename std::add\_const< T >::type >::type | [**const\_pointer**](#using-const-pointer) |
| using typename std::add\_pointer< T >::type                                   | [**pointer**](#using-pointer)              |
| using [element\_type](#using-element-type)                                    | [**value\_type**](#using-value-type)       |
| using T                                                                       | [**element\_type**](#using-element-type)   |
| using typename std::add\_pointer< typename std::add\_const< T >::type >::type | [**const\_pointer**](#using-const-pointer) |
| using typename std::add\_pointer< T >::type                                   | [**pointer**](#using-pointer)              |
| using [element\_type](#using-element-type)                                    | [**value\_type**](#using-value-type)       |
| using T                                                                       | [**element\_type**](#using-element-type)   |
| using typename std::add\_pointer< typename std::add\_const< T >::type >::type | [**const\_pointer**](#using-const-pointer) |
| using typename std::add\_pointer< T >::type                                   | [**pointer**](#using-pointer)              |
| using [element\_type](#using-element-type)                                    | [**value\_type**](#using-value-type)       |

## Public Functions

|                                                                                                                      | Name                                                                                                  |
| -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
|                                                                                                                      | [**Box**](#function-box)() =delete                                                                    |
|                                                                                                                      | [**Box**](#function-box)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && other)        |
|                                                                                                                      | [**\~Box**](#function-~box)()                                                                         |
|                                                                                                                      | [**Box**](#function-box)(const T & val)                                                               |
|                                                                                                                      | [**Box**](#function-box)(T && val)                                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) &                                                        | [**operator=**](#function-operator=)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && ) |
| const T \*                                                                                                           | [**operator->**](#function-operator->)() const                                                        |
| const T &                                                                                                            | [**operator\***](#function-operator*)() const                                                         |
| T \*                                                                                                                 | [**operator->**](#function-operator->)()                                                              |
| T &                                                                                                                  | [**operator\***](#function-operator*)()                                                               |
| void                                                                                                                 | [**swap**](#function-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs)         |
| T \*                                                                                                                 | [**into\_raw**](#function-into-raw)()                                                                 |
|                                                                                                                      | [**Box**](#function-box)() =delete                                                                    |
|                                                                                                                      | [**Box**](#function-box)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && other)        |
|                                                                                                                      | [**\~Box**](#function-~box)()                                                                         |
|                                                                                                                      | [**Box**](#function-box)(const T & val)                                                               |
|                                                                                                                      | [**Box**](#function-box)(T && val)                                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) &                                                        | [**operator=**](#function-operator=)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && ) |
| const T \*                                                                                                           | [**operator->**](#function-operator->)() const                                                        |
| const T &                                                                                                            | [**operator\***](#function-operator*)() const                                                         |
| T \*                                                                                                                 | [**operator->**](#function-operator->)()                                                              |
| T &                                                                                                                  | [**operator\***](#function-operator*)()                                                               |
| void                                                                                                                 | [**swap**](#function-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs)         |
| T \*                                                                                                                 | [**into\_raw**](#function-into-raw)()                                                                 |
|                                                                                                                      | [**Box**](#function-box)() =delete                                                                    |
|                                                                                                                      | [**Box**](#function-box)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && other)        |
|                                                                                                                      | [**\~Box**](#function-~box)()                                                                         |
|                                                                                                                      | [**Box**](#function-box)(const T & val)                                                               |
|                                                                                                                      | [**Box**](#function-box)(T && val)                                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) &                                                        | [**operator=**](#function-operator=)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && ) |
| const T \*                                                                                                           | [**operator->**](#function-operator->)() const                                                        |
| const T &                                                                                                            | [**operator\***](#function-operator*)() const                                                         |
| T \*                                                                                                                 | [**operator->**](#function-operator->)()                                                              |
| T &                                                                                                                  | [**operator\***](#function-operator*)()                                                               |
| void                                                                                                                 | [**swap**](#function-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs)         |
| T \*                                                                                                                 | [**into\_raw**](#function-into-raw)()                                                                 |
|                                                                                                                      | [**Box**](#function-box)() =delete                                                                    |
|                                                                                                                      | [**Box**](#function-box)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && other)        |
|                                                                                                                      | [**\~Box**](#function-~box)()                                                                         |
|                                                                                                                      | [**Box**](#function-box)(const T & val)                                                               |
|                                                                                                                      | [**Box**](#function-box)(T && val)                                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) &                                                        | [**operator=**](#function-operator=)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && ) |
| const T \*                                                                                                           | [**operator->**](#function-operator->)() const                                                        |
| const T &                                                                                                            | [**operator\***](#function-operator*)() const                                                         |
| T \*                                                                                                                 | [**operator->**](#function-operator->)()                                                              |
| T &                                                                                                                  | [**operator\***](#function-operator*)()                                                               |
| void                                                                                                                 | [**swap**](#function-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs)         |
| T \*                                                                                                                 | [**into\_raw**](#function-into-raw)()                                                                 |
|                                                                                                                      | [**Box**](#function-box)() =delete                                                                    |
|                                                                                                                      | [**Box**](#function-box)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && other)        |
|                                                                                                                      | [**\~Box**](#function-~box)()                                                                         |
|                                                                                                                      | [**Box**](#function-box)(const T & val)                                                               |
|                                                                                                                      | [**Box**](#function-box)(T && val)                                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) &                                                        | [**operator=**](#function-operator=)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) && ) |
| const T \*                                                                                                           | [**operator->**](#function-operator->)() const                                                        |
| const T &                                                                                                            | [**operator\***](#function-operator*)() const                                                         |
| T \*                                                                                                                 | [**operator->**](#function-operator->)()                                                              |
| T &                                                                                                                  | [**operator\***](#function-operator*)()                                                               |
| void                                                                                                                 | [**swap**](#function-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs)         |
| T \*                                                                                                                 | [**into\_raw**](#function-into-raw)()                                                                 |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a>< T ></p> | [**in\_place**](#function-in-place)(Fields &&... fields)                                              |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a></p>      | [**in\_place**](#function-in-place)(Fields && ...)                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md)                                                          | [**from\_raw**](#function-from-raw)(T \* raw)                                                         |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a></p>      | [**in\_place**](#function-in-place)(Fields && ...)                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md)                                                          | [**from\_raw**](#function-from-raw)(T \* )                                                            |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a></p>      | [**in\_place**](#function-in-place)(Fields && ...)                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md)                                                          | [**from\_raw**](#function-from-raw)(T \* )                                                            |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a></p>      | [**in\_place**](#function-in-place)(Fields && ...)                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md)                                                          | [**from\_raw**](#function-from-raw)(T \* )                                                            |
| <p>template \<typename... Fields><br><a href="/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md">Box</a></p>      | [**in\_place**](#function-in-place)(Fields && ...)                                                    |
| [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md)                                                          | [**from\_raw**](#function-from-raw)(T \* )                                                            |

## Friends

|      | Name                                                                                                                                                           |
| ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| void | [**swap**](#friend-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & lhs, [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs) |
| void | [**swap**](#friend-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & lhs, [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs) |
| void | [**swap**](#friend-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & lhs, [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs) |
| void | [**swap**](#friend-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & lhs, [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs) |
| void | [**swap**](#friend-swap)([Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & lhs, [Box](/readme-1/classes/classrust_1_1cxxbridge1_1_1_box.md) & rhs) |

## Detailed Description

```cpp
template <typename T >
class rust::cxxbridge1::Box;
```

## Public Types Documentation

### using element\_type

```cpp
using rust::cxxbridge1::Box< T >::element_type =  T;
```

### using const\_pointer

```cpp
using rust::cxxbridge1::Box< T >::const_pointer =  typename std::add_pointer<typename std::add_const<T>::type>::type;
```

### using pointer

```cpp
using rust::cxxbridge1::Box< T >::pointer =  typename std::add_pointer<T>::type;
```

### using value\_type

```cpp
using rust::cxxbridge1::Box< T >::value_type =  element_type;
```

### using element\_type

```cpp
using rust::cxxbridge1::Box< T >::element_type =  T;
```

### using const\_pointer

```cpp
using rust::cxxbridge1::Box< T >::const_pointer =  typename std::add_pointer<typename std::add_const<T>::type>::type;
```

### using pointer

```cpp
using rust::cxxbridge1::Box< T >::pointer =  typename std::add_pointer<T>::type;
```

### using value\_type

```cpp
using rust::cxxbridge1::Box< T >::value_type =  element_type;
```

### using element\_type

```cpp
using rust::cxxbridge1::Box< T >::element_type =  T;
```

### using const\_pointer

```cpp
using rust::cxxbridge1::Box< T >::const_pointer =  typename std::add_pointer<typename std::add_const<T>::type>::type;
```

### using pointer

```cpp
using rust::cxxbridge1::Box< T >::pointer =  typename std::add_pointer<T>::type;
```

### using value\_type

```cpp
using rust::cxxbridge1::Box< T >::value_type =  element_type;
```

### using element\_type

```cpp
using rust::cxxbridge1::Box< T >::element_type =  T;
```

### using const\_pointer

```cpp
using rust::cxxbridge1::Box< T >::const_pointer =  typename std::add_pointer<typename std::add_const<T>::type>::type;
```

### using pointer

```cpp
using rust::cxxbridge1::Box< T >::pointer =  typename std::add_pointer<T>::type;
```

### using value\_type

```cpp
using rust::cxxbridge1::Box< T >::value_type =  element_type;
```

### using element\_type

```cpp
using rust::cxxbridge1::Box< T >::element_type =  T;
```

### using const\_pointer

```cpp
using rust::cxxbridge1::Box< T >::const_pointer =  typename std::add_pointer<typename std::add_const<T>::type>::type;
```

### using pointer

```cpp
using rust::cxxbridge1::Box< T >::pointer =  typename std::add_pointer<T>::type;
```

### using value\_type

```cpp
using rust::cxxbridge1::Box< T >::value_type =  element_type;
```

## Public Functions Documentation

### function Box

```cpp
Box() =delete
```

### function Box

```cpp
Box(
    Box && other
)
```

### function \~Box

```cpp
~Box()
```

### function Box

```cpp
explicit Box(
    const T & val
)
```

### function Box

```cpp
explicit Box(
    T && val
)
```

### function operator=

```cpp
Box & operator=(
    Box && 
)
```

### function operator->

```cpp
const T * operator->() const
```

### function operator\*

```cpp
const T & operator*() const
```

### function operator->

```cpp
T * operator->()
```

### function operator\*

```cpp
T & operator*()
```

### function swap

```cpp
void swap(
    Box & rhs
)
```

### function into\_raw

```cpp
T * into_raw()
```

### function Box

```cpp
Box() =delete
```

### function Box

```cpp
Box(
    Box && other
)
```

### function \~Box

```cpp
~Box()
```

### function Box

```cpp
explicit Box(
    const T & val
)
```

### function Box

```cpp
explicit Box(
    T && val
)
```

### function operator=

```cpp
Box & operator=(
    Box && 
)
```

### function operator->

```cpp
const T * operator->() const
```

### function operator\*

```cpp
const T & operator*() const
```

### function operator->

```cpp
T * operator->()
```

### function operator\*

```cpp
T & operator*()
```

### function swap

```cpp
void swap(
    Box & rhs
)
```

### function into\_raw

```cpp
T * into_raw()
```

### function Box

```cpp
Box() =delete
```

### function Box

```cpp
Box(
    Box && other
)
```

### function \~Box

```cpp
~Box()
```

### function Box

```cpp
explicit Box(
    const T & val
)
```

### function Box

```cpp
explicit Box(
    T && val
)
```

### function operator=

```cpp
Box & operator=(
    Box && 
)
```

### function operator->

```cpp
const T * operator->() const
```

### function operator\*

```cpp
const T & operator*() const
```

### function operator->

```cpp
T * operator->()
```

### function operator\*

```cpp
T & operator*()
```

### function swap

```cpp
void swap(
    Box & rhs
)
```

### function into\_raw

```cpp
T * into_raw()
```

### function Box

```cpp
Box() =delete
```

### function Box

```cpp
Box(
    Box && other
)
```

### function \~Box

```cpp
~Box()
```

### function Box

```cpp
explicit Box(
    const T & val
)
```

### function Box

```cpp
explicit Box(
    T && val
)
```

### function operator=

```cpp
Box & operator=(
    Box && 
)
```

### function operator->

```cpp
const T * operator->() const
```

### function operator\*

```cpp
const T & operator*() const
```

### function operator->

```cpp
T * operator->()
```

### function operator\*

```cpp
T & operator*()
```

### function swap

```cpp
void swap(
    Box & rhs
)
```

### function into\_raw

```cpp
T * into_raw()
```

### function Box

```cpp
Box() =delete
```

### function Box

```cpp
Box(
    Box && other
)
```

### function \~Box

```cpp
~Box()
```

### function Box

```cpp
explicit Box(
    const T & val
)
```

### function Box

```cpp
explicit Box(
    T && val
)
```

### function operator=

```cpp
Box & operator=(
    Box && 
)
```

### function operator->

```cpp
const T * operator->() const
```

### function operator\*

```cpp
const T & operator*() const
```

### function operator->

```cpp
T * operator->()
```

### function operator\*

```cpp
T & operator*()
```

### function swap

```cpp
void swap(
    Box & rhs
)
```

### function into\_raw

```cpp
T * into_raw()
```

### function in\_place

```cpp
template <typename... Fields>
Box< T > in_place(
    Fields &&... fields
)
```

### function in\_place

```cpp
template <typename... Fields>
static Box in_place(
    Fields && ...
)
```

### function from\_raw

```cpp
static Box from_raw(
    T * raw
)
```

### function in\_place

```cpp
template <typename... Fields>
static Box in_place(
    Fields && ...
)
```

### function from\_raw

```cpp
static Box from_raw(
    T * 
)
```

### function in\_place

```cpp
template <typename... Fields>
static Box in_place(
    Fields && ...
)
```

### function from\_raw

```cpp
static Box from_raw(
    T * 
)
```

### function in\_place

```cpp
template <typename... Fields>
static Box in_place(
    Fields && ...
)
```

### function from\_raw

```cpp
static Box from_raw(
    T * 
)
```

### function in\_place

```cpp
template <typename... Fields>
static Box in_place(
    Fields && ...
)
```

### function from\_raw

```cpp
static Box from_raw(
    T * 
)
```

## Friends

### friend swap

```cpp
friend void swap(
    Box & lhs,

    Box & rhs
);
```

### friend swap

```cpp
friend void swap(
    Box & lhs,

    Box & rhs
);
```

### friend swap

```cpp
friend void swap(
    Box & lhs,

    Box & rhs
);
```

### friend swap

```cpp
friend void swap(
    Box & lhs,

    Box & rhs
);
```

### friend swap

```cpp
friend void swap(
    Box & lhs,

    Box & rhs
);
```

***

Updated on 2023-01-11 at 18:25:19 +0800
