mCRL2
Loading...
Searching...
No Matches
atermpp::aterm_string Class Reference

Term containing a string. More...

#include <aterm_string.h>

Inheritance diagram for atermpp::aterm_string:
atermpp::aterm atermpp::aterm_core atermpp::unprotected_aterm_core

Public Member Functions

 aterm_string ()=default
 Default constructor.
 
 aterm_string (const aterm &t)
 Constructor.
 
 aterm_string (const function_symbol &f)
 Constructor.
 
 aterm_string (const std::string &s)
 Constructor that allows construction from a string.
 
 aterm_string (const aterm_string &t) noexcept=default
 
 aterm_string (aterm_string &&t) noexcept=default
 
aterm_string & operator= (const aterm_string &t) noexcept=default
 
aterm_string & operator= (aterm_string &&t) noexcept=default
 
 operator const std::string & () const
 Conversion operator.
 
- Public Member Functions inherited from atermpp::aterm
 aterm ()
 Default constructor.
 
 aterm (const aterm &other) noexcept=default
 This class has user-declared copy constructor so declare default copy and move operators.
 
aterm & operator= (const aterm &other) noexcept=default
 
 aterm (aterm &&other) noexcept=default
 
aterm & operator= (aterm &&other) noexcept=default
 
template<class ForwardIterator >
requires (mcrl2::utilities::is_iterator<ForwardIterator>::value && !std::is_same_v<typename ForwardIterator::iterator_category, std::input_iterator_tag> && !std::is_same_v<typename ForwardIterator::iterator_category, std::output_iterator_tag>)
 aterm (const function_symbol &sym, ForwardIterator begin, ForwardIterator end)
 Constructor that provides an aterm based on a function symbol and forward iterator providing the arguments.
 
template<class InputIterator >
requires mcrl2::utilities::is_iterator<InputIterator>
 aterm (const function_symbol &sym, InputIterator begin, InputIterator end)
 Constructor that provides an aterm based on a function symbol and an input iterator providing the arguments.
 
template<class InputIterator , class TermConverter >
requires mcrl2::utilities::is_iterator<InputIterator>
 aterm (const function_symbol &sym, InputIterator begin, InputIterator end, TermConverter converter)
 Constructor.
 
template<typename... Terms>
 aterm (const function_symbol &symbol, const Terms &... arguments)
 Constructor for n-arity function application.
 
const function_symbol & function () const
 Returns the function symbol belonging to an aterm.
 
size_type size () const
 Returns the number of arguments of this term.
 
bool empty () const
 Returns true if the term has no arguments.
 
const_iterator begin () const
 Returns an iterator pointing to the first argument.
 
const_iterator end () const
 Returns a const_iterator pointing past the last argument.
 
constexpr size_type max_size () const
 Returns the largest possible number of arguments.
 
const aterm & operator[] (const size_type i) const
 Returns the i-th argument.
 
- Public Member Functions inherited from atermpp::aterm_core
 aterm_core () noexcept
 Default constructor.
 
 ~aterm_core () noexcept
 Standard destructor.
 
 aterm_core (const detail::_aterm *t) noexcept
 Constructor based on an internal term data structure. This is not for public use.
 
 aterm_core (const aterm_core &other) noexcept
 Copy constructor.
 
 aterm_core (aterm_core &&other) noexcept
 Move constructor.
 
aterm_core & operator= (const aterm_core &other) noexcept
 Assignment operator.
 
aterm_core & assign (const aterm_core &other, detail::thread_aterm_pool &pool) noexcept
 Assignment operator, to be used if busy and forbidden flags are explicitly available.
 
template<bool CHECK_BUSY_FLAG = true>
aterm_core & unprotected_assign (const aterm_core &other) noexcept
 Assignment operator, to be used when the busy flags do not need to be set.
 
aterm_core & operator= (aterm_core &&other) noexcept
 Move assignment operator.
 
- Public Member Functions inherited from atermpp::unprotected_aterm_core
 unprotected_aterm_core () noexcept
 Default constuctor.
 
 unprotected_aterm_core (const detail::_aterm *term) noexcept
 Constructor.
 
bool type_is_appl () const noexcept
 Dynamic check whether the term is an aterm.
 
bool type_is_int () const noexcept
 Dynamic check whether the term is an aterm_int.
 
bool type_is_list () const noexcept
 Dynamic check whether the term is an aterm_list.
 
bool operator== (const unprotected_aterm_core &t) const
 Comparison operator.
 
std::weak_ordering operator<=> (const unprotected_aterm_core &t) const
 Comparison operator for two unprotected aterms.
 
bool defined () const
 Returns true if this term is not equal to the term assigned by the default constructor of aterms, aterm_appls and aterm_int.
 
void swap (unprotected_aterm_core &t) noexcept
 Swaps this term with its argument.
 
const function_symbol & function () const
 Yields the function symbol in an aterm.
 

Additional Inherited Members

- Public Types inherited from atermpp::aterm
using size_type = std::size_t
 An unsigned integral type.
 
using difference_type = ptrdiff_t
 A signed integral type.
 
using iterator = term_appl_iterator< aterm >
 Iterator used to iterate through an term_appl.
 
using const_iterator = term_appl_iterator< aterm >
 Const iterator used to iterate through an term_appl.
 
- Protected Member Functions inherited from atermpp::aterm
 aterm (detail::_term_appl *t)
 Constructor.
 
- Protected Attributes inherited from atermpp::unprotected_aterm_core
const detail::_aterm * m_term
 

Detailed Description

Term containing a string.

Definition at line 19 of file aterm_string.h.

Constructor & Destructor Documentation

◆ aterm_string() [1/6]

atermpp::aterm_string::aterm_string ( )
default

Default constructor.

◆ aterm_string() [2/6]

atermpp::aterm_string::aterm_string ( const aterm &  t)
inlineexplicit

Constructor.

Parameters
tA term without arguments of type appl. The string is given by the function symbol.

Definition at line 27 of file aterm_string.h.

◆ aterm_string() [3/6]

atermpp::aterm_string::aterm_string ( const function_symbol &  f)
inline

Constructor.

Parameters
fA function symbol with arity 0.

Definition at line 35 of file aterm_string.h.

◆ aterm_string() [4/6]

atermpp::aterm_string::aterm_string ( const std::string &  s)
inline

Constructor that allows construction from a string.

Parameters
sA string.

Definition at line 44 of file aterm_string.h.

◆ aterm_string() [5/6]

atermpp::aterm_string::aterm_string ( const aterm_string &  t)
defaultnoexcept

Copy constructor.

Parameters
tAn aterm_string.

◆ aterm_string() [6/6]

atermpp::aterm_string::aterm_string ( aterm_string &&  t)
defaultnoexcept

Move constructor.

Parameters
tAn aterm_string.

Member Function Documentation

◆ operator const std::string &()

atermpp::aterm_string::operator const std::string & ( ) const
inline

Conversion operator.

Returns
The term converted to string

Definition at line 68 of file aterm_string.h.

◆ operator=() [1/2]

aterm_string & atermpp::aterm_string::operator= ( aterm_string &&  t)
defaultnoexcept

Move assignment operator.

Parameters
tAn aterm_string.

◆ operator=() [2/2]

aterm_string & atermpp::aterm_string::operator= ( const aterm_string &  t)
defaultnoexcept

Assignment operator.

Parameters
tAn aterm_string.

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