Home
About Us
Publications
Developers
Installation
Examples
Documentation
SomeWebsiteLogo
Home
About Us
Publications
Developers
Installation
Examples
Documentation
include
libmesh
null_output_iterator.h
Go to the documentation of this file.
1
// The libMesh Finite Element Library.
2
// Copyright (C) 2002-2018 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner
3
4
// This library is free software; you can redistribute it and/or
5
// modify it under the terms of the GNU Lesser General Public
6
// License as published by the Free Software Foundation; either
7
// version 2.1 of the License, or (at your option) any later version.
8
9
// This library is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
// Lesser General Public License for more details.
13
14
// You should have received a copy of the GNU Lesser General Public
15
// License along with this library; if not, write to the Free Software
16
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
18
19
20
#ifndef LIBMESH_NULL_OUTPUT_ITERATOR_H
21
#define LIBMESH_NULL_OUTPUT_ITERATOR_H
22
23
// Local includes
24
25
// C++ includes
26
#include <iterator>
27
28
namespace
libMesh
29
{
30
39
template
<
typename
T>
40
struct
null_output_iterator
41
: std::iterator<std::output_iterator_tag, T>
42
{
43
template
<
typename
T2>
44
void
operator=
(
const
T2&) {}
45
46
null_output_iterator
&
operator++
() {
47
return
*
this
;
48
}
49
50
null_output_iterator
operator++
(
int
) {
51
return
null_output_iterator
(*
this
);
52
}
53
54
// We don't return a reference-to-T here because we don't want to
55
// construct one or have any of its methods called.
56
null_output_iterator
&
operator*
() {
return
*
this
; }
57
};
58
59
}
// namespace libMesh
60
61
62
#endif // LIBMESH_NULL_OUTPUT_ITERATOR_H
libMesh
Definition:
default_coupling.C:31
libMesh::null_output_iterator::operator++
null_output_iterator operator++(int)
Definition:
null_output_iterator.h:50
libMesh::null_output_iterator::operator++
null_output_iterator & operator++()
Definition:
null_output_iterator.h:46
libMesh::null_output_iterator::operator=
void operator=(const T2 &)
Definition:
null_output_iterator.h:44
libMesh::null_output_iterator
A do-nothing output iterator implementation.
Definition:
null_output_iterator.h:40
libMesh::null_output_iterator::operator*
null_output_iterator & operator*()
Definition:
null_output_iterator.h:56
generated by