Asylo
Classes | Public Member Functions | Static Public Member Functions | List of all members
asylo::SharedName Class Reference

A name shared between trusted and untrusted code. More...

#include <shared_name.h>

Classes

struct  Eq
 
struct  Hash
 

Public Member Functions

 SharedName ()=default
 Constructs an invalid, null SharedName. More...
 
 SharedName (SharedNameKind kind, const std::string &name)
 Constructs a SharedName. More...
 
SharedNameKind kind () const
 The SharedName's kind of resource name domain. More...
 
const std::string & name () const
 The SharedName's name within its kind. More...
 

Static Public Member Functions

static SharedName Address (const std::string &name)
 Constructs a SharedName with kind kAddressName. More...
 
static SharedName MemBlock (const std::string &name)
 Constructs a SharedName with kind kMemBlockName. More...
 
static SharedName Socket (const std::string &name)
 Constructs a SharedName with kind kSocketName. More...
 
static SharedName Timer (const std::string &name)
 Constructs a SharedName with kind kTimerName. More...
 

Detailed Description

A name shared between trusted and untrusted code.

A tagged string class representing a name shared between trusted and untrusted code.

Constructor & Destructor Documentation

◆ SharedName() [1/2]

asylo::SharedName::SharedName ( )
default

Constructs an invalid, null SharedName.

◆ SharedName() [2/2]

asylo::SharedName::SharedName ( SharedNameKind  kind,
const std::string &  name 
)
inline

Constructs a SharedName.

Parameters
kindThe kind of the name's resource domain
nameThe SharedName's name that should be unique within its kind.

Member Function Documentation

◆ Address()

static SharedName asylo::SharedName::Address ( const std::string &  name)
inlinestatic

Constructs a SharedName with kind kAddressName.

◆ kind()

SharedNameKind asylo::SharedName::kind ( ) const
inline

The SharedName's kind of resource name domain.

Returns
The resource domain of the name.

◆ MemBlock()

static SharedName asylo::SharedName::MemBlock ( const std::string &  name)
inlinestatic

Constructs a SharedName with kind kMemBlockName.

◆ name()

const std::string& asylo::SharedName::name ( ) const
inline

The SharedName's name within its kind.

Returns
The string value of the name within its domain.

◆ Socket()

static SharedName asylo::SharedName::Socket ( const std::string &  name)
inlinestatic

Constructs a SharedName with kind kSocketName.

◆ Timer()

static SharedName asylo::SharedName::Timer ( const std::string &  name)
inlinestatic

Constructs a SharedName with kind kTimerName.


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