Ice 3.8
C++ API Reference
Loading...
Searching...
No Matches
OperationMode.h
1// Copyright (c) ZeroC, Inc.
2
3// slice2cpp version 3.8.0
4// <auto-generated>Generated from Slice file 'OperationMode.ice'.</auto-generated>
5// clang-format off
6
7#ifndef Ice_OperationMode_h_
8#define Ice_OperationMode_h_
9
11#include <Ice/Config.h>
12#include <Ice/StreamHelpers.h>
13
14#ifndef ICE_DISABLE_VERSION
15# if ICE_INT_VERSION / 100 != 308
16# error Ice version mismatch!
17# endif
18# if ICE_INT_VERSION % 100 >= 50
19# error Beta header file detected
20# endif
21# if ICE_INT_VERSION % 100 < 0
22# error Ice patch level mismatch!
23# endif
24#endif
25
26// NOLINTBEGIN(modernize-concat-nested-namespaces)
27
28namespace Ice
29{
30 /// Specifies if an operation is idempotent, which affects the retry behavior of the Ice client runtime.
31 /// @remarks The Slice compiler generated this enum class from Slice enumeration `::Ice::OperationMode`.
32 enum class OperationMode : std::uint8_t
33 {
34 /// A non-idempotent operation (the default). The Ice client runtime guarantees that it will not violate
35 /// at-most-once semantics for operations with this mode.
37
38 /// Equivalent to ::Ice::OperationMode#Idempotent, but deprecated.
39 Nonmutating [[deprecated("Use Idempotent instead.")]],
40
41 /// An idempotent operation. The Ice client runtime does not guarantee at-most-once semantics for such an
42 /// operation.
43 /// @remarks When an operation is idempotent, the Ice runtime will attempt to transparently recover from certain
44 /// runtime errors by re-issuing a failed request transparently.
46 };
47
48 /// Outputs the enumerator name or underlying value of an OperationMode to a stream.
49 /// @param os The output stream.
50 /// @param value The value to output.
51 /// @return The output stream.
52 ICE_API std::ostream& operator<<(std::ostream& os, OperationMode value);
53}
54
55namespace Ice
56{
57 /// @cond INTERNAL
58 template<>
59 struct StreamableTraits<::Ice::OperationMode>
60 {
62 static constexpr int minValue = 0;
63 static constexpr int maxValue = 2;
64 static constexpr int minWireSize = 1;
65 static constexpr bool fixedLength = false;
66 };
67 /// @endcond
68}
69
70// NOLINTEND(modernize-concat-nested-namespaces)
71
73#endif
constexpr StreamHelperCategory StreamHelperCategoryEnum
Generated enum types.
int StreamHelperCategory
The stream helper category allows to select a StreamHelper specialization for a specific category of ...
OperationMode
Specifies if an operation is idempotent, which affects the retry behavior of the Ice client runtime.
@ Normal
A non-idempotent operation (the default).
@ Idempotent
An idempotent operation.
@ Nonmutating
Equivalent to Ice::OperationMode::Idempotent, but deprecated.
std::ostream & operator<<(std::ostream &os, const Identity &value)
Outputs the description of an Identity to a stream, including all its fields.
The Ice RPC framework.
Definition SampleEvent.h:66
static constexpr bool fixedLength
Indicates if the type is always encoded on a fixed number of bytes.
static constexpr int minWireSize
The minimum number of bytes needed to marshal this type.
static constexpr StreamHelperCategory helper
The category trait, used for selecting the appropriate StreamHelper.