Z3 |

Public Member Functions
ast_vector_tpl< T >::iterator Class Referencefinal

`#include <z3++.h>`

## Public Member Functions
| iterator (ast_vector_tpl const *v, unsigned i)
bool | operator== (iterator const &other) const noexcept
bool | operator!= (iterator const &other) const noexcept
iterator & | operator++ () noexcept
void | set (T &arg)
iterator | operator++ (int) noexcept
T * | operator-> () const
T | operator* () const

## Detailed Description

template<typename T>
class z3::ast_vector_tpl< T >::iterator

Definition at line 580 of file z3++.h.

## Constructor & Destructor Documentation

## ◆ iterator()

iterator | ( | ast_vector_tpl const * | v,
|  | unsigned | i
| ) |  |
| inline

Definition at line 584 of file z3++.h.

584: m_vector(v), m_index(i) {}

## Member Function Documentation

## ◆ operator!=()

bool operator!= | ( | iterator const & | other | ) | const
| inline noexcept

Definition at line 589 of file z3++.h.

589 {
590 return other.m_index != m_index;
591 };

## ◆ operator*()

T operator* | ( |  | ) | const
| inline

Definition at line 601 of file z3++.h.

601{ return (*m_vector)[m_index]; }

Referenced by ast_vector_tpl< T >::iterator::operator->().

## ◆ operator++() [1/2]

iterator & operator++ | ( |  | ) |
| inline noexcept

Definition at line 592 of file z3++.h.

592 {
593 ++m_index;
594 return *this;
595 }

## ◆ operator++() [2/2]

iterator operator++ | ( | int |  | ) |
| inline noexcept

Definition at line 599 of file z3++.h.

599{ iterator tmp = *this; ++m_index; return tmp; }
z3::ast_vector_tpl::iterator::iterator
iterator(ast_vector_tpl const *v, unsigned i)
Definition: z3++.h:584

## ◆ operator->()

T * operator-> | ( |  | ) | const
| inline

Definition at line 600 of file z3++.h.

600{ return &(operator*()); }
z3::ast_vector_tpl::iterator::operator*
T operator*() const
Definition: z3++.h:601

## ◆ operator==()

bool operator== | ( | iterator const & | other | ) | const
| inline noexcept

Definition at line 586 of file z3++.h.

586 {
587 return other.m_index == m_index;
588 };

## ◆ set()

void set | ( | T & | arg | ) |
| inline

Definition at line 596 of file z3++.h.

596 {
597 Z3_ast_vector_set(m_vector->ctx(), *m_vector, m_index, arg);
598 }
z3::object::ctx
context & ctx() const
Definition: z3++.h:422
Z3_ast_vector_set
void Z3_API Z3_ast_vector_set(Z3_context c, Z3_ast_vector v, unsigned i, Z3_ast a)
Update position i of the AST vector v with the AST a.