mCRL2
Loading...
Searching...
No Matches
mcrl2::data::variable Class Reference

\brief A data variable More...

#include <variable.h>

Inheritance diagram for mcrl2::data::variable:
mcrl2::data::data_expression atermpp::term_appl< aterm > atermpp::aterm atermpp::unprotected_aterm

Public Member Functions

 variable (const variable &) noexcept=default
 Move semantics.
 
 variable (variable &&) noexcept=default
 
variableoperator= (const variable &) noexcept=default
 
variableoperator= (variable &&) noexcept=default
 
const core::identifier_stringname () const
 
const sort_expressionsort () const
 
 variable ()
 Default constructor.
 
 variable (const atermpp::aterm &term)
 Constructor.
 
 variable (const core::identifier_string &name, const sort_expression &sort)
 Constructor.
 
 variable (const std::string &name, const sort_expression &sort)
 Constructor.
 
- Public Member Functions inherited from mcrl2::data::data_expression
 data_expression ()
 \brief Default constructor.
 
 data_expression (const atermpp::aterm &term)
 
 data_expression (const data_expression &) noexcept=default
 Move semantics.
 
 data_expression (data_expression &&) noexcept=default
 
data_expressionoperator= (const data_expression &) noexcept=default
 
data_expressionoperator= (data_expression &&) noexcept=default
 
bool is_default_data_expression () const
 A function to efficiently determine whether a data expression is made by the default constructor.
 
application operator() (const data_expression &e) const
 Apply a data expression to a data expression.
 
application operator() (const data_expression &e1, const data_expression &e2) const
 Apply data expression to two data expressions.
 
application operator() (const data_expression &e1, const data_expression &e2, const data_expression &e3) const
 Apply data expression to three data expressions.
 
application operator() (const data_expression &e1, const data_expression &e2, const data_expression &e3, const data_expression &e4) const
 Apply data expression to four data expressions.
 
sort_expression sort () const
 Returns the sort of the data expression.
 
- Public Member Functions inherited from atermpp::term_appl< aterm >
 term_appl ()
 Default constructor.
 
 term_appl (const aterm &t)
 Explicit constructor from an aterm.
 
 term_appl (const term_appl &other) noexcept=default
 This class has user-declared copy constructor so declare default copy and move operators.
 
 term_appl (term_appl &&other) noexcept=default
 
 term_appl (const function_symbol &sym, ForwardIterator begin, ForwardIterator end)
 Constructor that provides an aterm_appl based on a function symbol and forward iterator providing the arguments.
 
 term_appl (const function_symbol &sym, InputIterator begin, InputIterator end)
 Constructor that provides an aterm_appl based on a function symbol and an input iterator providing the arguments.
 
 term_appl (const function_symbol &sym, InputIterator begin, InputIterator end, TermConverter converter)
 
 term_appl (const function_symbol &sym)
 Constructor.
 
 term_appl (const function_symbol &symbol, const Terms &...arguments)
 Constructor for n-arity function application.
 
term_apploperator= (const term_appl &other) noexcept=default
 
term_apploperator= (term_appl &&other) noexcept=default
 
const function_symbolfunction () const
 Returns the function symbol belonging to an aterm_appl.
 
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 atermoperator[] (const size_type i) const
 Returns the i-th argument.
 
- Public Member Functions inherited from atermpp::aterm
 aterm () noexcept
 Default constructor.
 
 ~aterm () noexcept
 Standard destructor.
 
 aterm (const detail::_aterm *t) noexcept
 Constructor based on an internal term data structure. This is not for public use.
 
 aterm (const aterm &other) noexcept
 Copy constructor.
 
 aterm (aterm &&other) noexcept
 Move constructor.
 
atermoperator= (const aterm &other) noexcept
 Assignment operator.
 
atermassign (const aterm &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>
atermunprotected_assign (const aterm &other) noexcept
 Assignment operator, to be used when the busy flags do not need to be set.
 
atermoperator= (aterm &&other) noexcept
 Move assignment operator.
 
- Public Member Functions inherited from atermpp::unprotected_aterm
 unprotected_aterm () noexcept
 Default constuctor.
 
 unprotected_aterm (const detail::_aterm *term) noexcept
 Constructor.
 
bool type_is_appl () const noexcept
 Dynamic check whether the term is an aterm_appl.
 
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 &t) const
 Comparison operator.
 
bool operator!= (const unprotected_aterm &t) const
 Inequality operator on two unprotected aterms.
 
bool operator< (const unprotected_aterm &t) const
 Comparison operator for two unprotected aterms.
 
bool operator> (const unprotected_aterm &t) const
 Comparison operator for two unprotected aterms.
 
bool operator<= (const unprotected_aterm &t) const
 Comparison operator for two unprotected aterms.
 
bool operator>= (const unprotected_aterm &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, term_appl<T>'s and aterm_int.
 
void swap (unprotected_aterm &t) noexcept
 Swaps this term with its argument.
 
const function_symbolfunction () const
 Yields the function symbol in an aterm.
 

Additional Inherited Members

- Public Types inherited from atermpp::term_appl< aterm >
typedef aterm value_type
 The type of object, T stored in the term_appl.
 
typedef atermpointer
 Pointer to T.
 
typedef atermreference
 Reference to T.
 
typedef const aterm const_reference
 Const reference to T.
 
typedef std::size_t size_type
 An unsigned integral type.
 
typedef ptrdiff_t difference_type
 A signed integral type.
 
typedef term_appl_iterator< atermiterator
 Iterator used to iterate through an term_appl.
 
typedef term_appl_iterator< atermconst_iterator
 Const iterator used to iterate through an term_appl.
 
- Protected Member Functions inherited from atermpp::term_appl< aterm >
 term_appl (detail::_term_appl *t)
 Constructor.
 
- Protected Attributes inherited from atermpp::unprotected_aterm
const detail::_atermm_term
 

Detailed Description

\brief A data variable

Definition at line 27 of file variable.h.

Constructor & Destructor Documentation

◆ variable() [1/6]

mcrl2::data::variable::variable ( const variable )
defaultnoexcept

Move semantics.

◆ variable() [2/6]

mcrl2::data::variable::variable ( variable &&  )
defaultnoexcept

◆ variable() [3/6]

mcrl2::data::variable::variable ( )
inline

Default constructor.

Definition at line 49 of file variable.h.

◆ variable() [4/6]

mcrl2::data::variable::variable ( const atermpp::aterm term)
inlineexplicit

Constructor.

Parameters
termA term

Definition at line 55 of file variable.h.

◆ variable() [5/6]

mcrl2::data::variable::variable ( const core::identifier_string name,
const sort_expression sort 
)
inline

Constructor.

Definition at line 62 of file variable.h.

◆ variable() [6/6]

mcrl2::data::variable::variable ( const std::string &  name,
const sort_expression sort 
)
inline

Constructor.

Definition at line 69 of file variable.h.

Member Function Documentation

◆ name()

const core::identifier_string & mcrl2::data::variable::name ( ) const
inline

Definition at line 38 of file variable.h.

◆ operator=() [1/2]

variable & mcrl2::data::variable::operator= ( const variable )
defaultnoexcept

◆ operator=() [2/2]

variable & mcrl2::data::variable::operator= ( variable &&  )
defaultnoexcept

◆ sort()

const sort_expression & mcrl2::data::variable::sort ( ) const
inline

Definition at line 43 of file variable.h.


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