Aldebaran documentation
|
C++ Libraries
|
index
libqi-api
2.8.7.4
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
qi
type
detail
anyiterator.hpp
Go to the documentation of this file.
1
#pragma once
2
/*
3
** Copyright (C) 2013 Aldebaran Robotics
4
** See COPYING for the license
5
*/
6
7
#ifndef _QI_TYPE_DETAIL_ANYITERATOR_HPP_
8
#define _QI_TYPE_DETAIL_ANYITERATOR_HPP_
9
10
#include <
qi/type/detail/anyvalue.hpp
>
11
12
namespace
qi {
13
16
class
QI_API
AnyIterator
:
public
AnyValue
17
{
18
public
:
19
using
value_type
=
AnyReference
;
20
using
pointer
=
AnyReference
*;
21
using
reference
=
AnyReference
&;
22
using
difference_type
= ptrdiff_t;
23
using
iterator_category
= std::forward_iterator_tag;
24
25
AnyIterator
();
26
AnyIterator
(
const
AnyReference
& p);
27
AnyIterator
(
const
AnyValue
& v);
28
29
template
<
typename
T>
30
explicit
AnyIterator
(
const
T& ref);
31
33
AnyIterator
& operator++();
35
AnyIterator
operator++(
int
);
37
AnyReference
operator*();
38
};
39
40
QI_API
bool
operator==
(
const
AnyIterator
& a,
const
AnyIterator
& b);
41
QI_API
bool
operator!=
(
const
AnyIterator
& a,
const
AnyIterator
& b);
42
}
43
44
#include <
qi/type/detail/anyiterator.hxx
>
45
46
#endif // _QI_TYPE_DETAIL_ANYITERATOR_HPP_
qi::AnyIterator
Definition:
anyiterator.hpp:16
qi::AnyValue
Definition:
anyvalue.hpp:19
QI_API
#define QI_API
Definition:
api.hpp:33
qi::AnyIterator::iterator_category
std::forward_iterator_tag iterator_category
Definition:
anyiterator.hpp:23
qi::AnyReference
Definition:
anyreference.hpp:360
qi::AnyIterator::difference_type
ptrdiff_t difference_type
Definition:
anyiterator.hpp:22
qi::operator==
bool operator==(const Signature &lhs, const Signature &rhs)
anyiterator.hxx
qi::operator!=
bool operator!=(const Signature &lhs, const Signature &rhs)
Definition:
signature.hpp:157
anyvalue.hpp
Copyright Aldebaran Robotics