MNX Document Model
Loading...
Searching...
No Matches
mnx::layout::LayoutContent Class Reference
+ Inheritance diagram for mnx::layout::LayoutContent:

Public Member Functions

Group appendGroup ()
 
Staff appendStaff ()
 
- Public Member Functions inherited from mnx::ContentArray< LayoutContentObject >
get (size_t index) const
 Retrieve an element from the array as a specific type.
 
LayoutContentObject append (...)=delete
 
- Public Member Functions inherited from mnx::Array< T >
 Array ()
 Constructor for detached array instance.
 
 Array (const std::shared_ptr< json > &root, json_pointer pointer)
 Wraps an Array class around an existing JSON array node.
 
 Array (Base &parent, std::string_view key)
 Creates a new Array class as a child of a JSON node.
 
size_t size () const
 Get the size of the array.
 
bool empty () const
 Check if the array is empty.
 
void clear ()
 Clear all elements.
 
at (size_t index) const
 Direct getter for a particular element.
 
front () const
 Access the first element.
 
back () const
 Access the last element.
 
auto operator[] (size_t index) const
 const operator[]
 
auto operator[] (size_t index)
 non-const operator[]
 
template<typename U = T>
std::enable_if_t<!std::is_base_of_v< Base, U >, void > push_back (const U &value)
 Append a new value to the array. (Available only for primitive types)
 
template<typename InputIt , typename U = T>
std::enable_if_t<!std::is_base_of_v< Base, U >, void > assign (InputIt first, InputIt last)
 Replace all elements with values from an iterator range. (Available only for primitive types)
 
template<typename U = T>
std::enable_if_t<!std::is_base_of_v< Base, U >, void > assign (const std::vector< U > &values)
 Replace all elements with values from a vector. (Available only for primitive types)
 
void erase (size_t index)
 Remove an element at a given index.
 
template<typename U = T>
std::enable_if_t<!std::is_base_of_v< Base, U >, std::vector< U > > toStdVector () const
 Converts the Array to an owning std::vector.
 
auto begin ()
 Returns an iterator to the beginning of the array.
 
auto end ()
 Returns an iterator to the end of the array.
 
auto begin () const
 Returns a const iterator to the beginning of the array.
 
auto end () const
 Returns a const iterator to the end of the array.
 
- Public Member Functions inherited from mnx::Base
 Base (const Base &src)
 Copy constructor.
 
 Base (Base &&src) noexcept
 Move constructor.
 
Baseoperator= (const Base &src)
 Copy assignment operator.
 
Baseoperator= (Base &&src)
 Move assignment operator.
 
std::string dump (int indents=-1) const
 Dumps the branch to a string. Useful in debugging.
 
template<typename T >
parent () const
 Returns the parent object for this node.
 
template<typename T , typename Scope = scope::Default>
std::optional< T > getEnclosingElement () const
 Returns the enclosing array element for this instance. If T is a type that can be nested (e.g. ContentObject), the highest level instance is returned. (To get the lowest level immediate container, use ContentObject::container.)
 
json_pointer pointer () const
 Returns the json_pointer for this node.
 
Document document () const
 Returns the document root.
 
bool empty () const
 Returns true if the object is empty.
 
- Public Member Functions inherited from mnx::detail::ArrayAppendBase< Derived, T >
template<typename U = T, typename... Args, std::enable_if_t< std::is_base_of_v< Base, U >, int > = 0>
append (Args &&... args)
 Append a new element at the end of the array. (Available only for Base types)
 

Additional Inherited Members

- Public Types inherited from mnx::ContentArray< LayoutContentObject >
using BaseArray = Array< LayoutContentObject >
 The base array type.
 
- Public Types inherited from mnx::Array< T >
using value_type = T
 The type for elements in this Array.
 
using iterator = iter< Array >
 non-const iterator type
 
using const_iterator = iter< const Array >
 const iterator type
 
- Protected Member Functions inherited from mnx::ContentArray< LayoutContentObject >
appendWithType (Args &&... args)
 
getTypedObject (size_t index) const
 Constructs an object of type T if its type matches the JSON type.
 
- Protected Member Functions inherited from mnx::Array< T >
void checkIndex (size_t index) const
 validates that an index is not out of range
 
- Protected Member Functions inherited from mnx::Base
jsonref () const
 Convert this node for retrieval.
 
jsonref ()
 Access the JSON node for modification.
 
const std::shared_ptr< json > & root () const
 Returns the root.
 
 Base (const std::shared_ptr< json > &root, json_pointer pointer)
 Wrap a Base instance around a specific JSON reference using a json_pointer.
 
 Base (json &&jsonRef, Base &parent, std::string_view key)
 Construct a Base reference as a child inside a parent node.
 
template<typename T >
getChild (std::string_view key) const
 Retrieves and validates a required child node.
 
template<typename T >
setChild (std::string_view key, const T &value)
 Sets a child node.
 
template<typename T >
std::optional< T > getOptionalChild (std::string_view key) const
 Retrieves an optional child node.