Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::osc::BundleElement Struct Reference

Bundle element — either a message or a nested bundle. More...

#include <bundle.hpp>

Public Member Functions

 BundleElement ()=default
 BundleElement (Message msg)
 Construct from a message.
 BundleElement (std::unique_ptr< Bundle > b)
 Construct from a nested bundle (takes ownership).
 BundleElement (Bundle b)
 Convenience: construct from a bundle value (heap-allocates a copy).
bool is_message () const
bool is_bundle () const
const Message & message () const
const Bundle & bundle () const

Public Attributes

std::variant< Message, std::unique_ptr< Bundle > > content

Detailed Description

Bundle element — either a message or a nested bundle.

Uses unique_ptr<Bundle> to break the recursive value type.

Constructor & Destructor Documentation

◆ BundleElement() [1/4]

pulp::osc::BundleElement::BundleElement ( )
default

◆ BundleElement() [2/4]

pulp::osc::BundleElement::BundleElement ( Message msg)
inlineexplicit

Construct from a message.

◆ BundleElement() [3/4]

pulp::osc::BundleElement::BundleElement ( std::unique_ptr< Bundle > b)
inlineexplicit

Construct from a nested bundle (takes ownership).

◆ BundleElement() [4/4]

pulp::osc::BundleElement::BundleElement ( Bundle b)
inlineexplicit

Convenience: construct from a bundle value (heap-allocates a copy).

Deferred definition (Bundle is complete here).

Member Function Documentation

◆ bundle()

const Bundle & pulp::osc::BundleElement::bundle ( ) const
inline

◆ is_bundle()

bool pulp::osc::BundleElement::is_bundle ( ) const
inline

◆ is_message()

bool pulp::osc::BundleElement::is_message ( ) const
inline

◆ message()

const Message & pulp::osc::BundleElement::message ( ) const
inline

Member Data Documentation

◆ content

std::variant<Message, std::unique_ptr<Bundle> > pulp::osc::BundleElement::content

The documentation for this struct was generated from the following file:
  • /home/runner/work/pulp/pulp/core/osc/include/pulp/osc/bundle.hpp