Ice 3.7 C++98 API Reference
Loading...
Searching...
No Matches
FileInfo.h
Go to the documentation of this file.
1//
2// Copyright (c) ZeroC, Inc. All rights reserved.
3//
4//
5// Ice version 3.7.11
6//
7// <auto-generated>
8//
9// Generated from file `FileInfo.ice'
10//
11// Warning: do not edit this file.
12//
13// </auto-generated>
14//
15
16#ifndef __IcePatch2_FileInfo_h__
17#define __IcePatch2_FileInfo_h__
18
20#include <Ice/ProxyF.h>
21#include <Ice/ObjectF.h>
22#include <Ice/ValueF.h>
23#include <Ice/Exception.h>
24#include <Ice/LocalObject.h>
25#include <Ice/StreamHelpers.h>
26#include <Ice/Comparable.h>
27#include <IceUtil/ScopedArray.h>
28#include <Ice/Optional.h>
31#include <IcePatch2/Config.h>
32
33#ifndef ICE_IGNORE_VERSION
34# if ICE_INT_VERSION / 100 != 307
35# error Ice version mismatch!
36# endif
37# if ICE_INT_VERSION % 100 >= 50
38# error Beta header file detected
39# endif
40# if ICE_INT_VERSION % 100 < 11
41# error Ice patch level mismatch!
42# endif
43#endif
44
45#ifndef ICEPATCH2_API
46# if defined(ICE_STATIC_LIBS)
47# define ICEPATCH2_API /**/
48# elif defined(ICEPATCH2_API_EXPORTS)
49# define ICEPATCH2_API ICE_DECLSPEC_EXPORT
50# else
51# define ICEPATCH2_API ICE_DECLSPEC_IMPORT
52# endif
53#endif
54
55#ifdef ICE_CPP11_MAPPING // C++11 mapping
56
57namespace IcePatch2
58{
59
64struct FileInfo
65{
69 ::std::string path;
73 ::Ice::ByteSeq checksum;
77 int size;
81 bool executable;
82
87 std::tuple<const ::std::string&, const ::Ice::ByteSeq&, const int&, const bool&> ice_tuple() const
88 {
89 return std::tie(path, checksum, size, executable);
90 }
91};
92
96using FileInfoSeq = ::std::vector<FileInfo>;
97
102struct LargeFileInfo
103{
107 ::std::string path;
111 ::Ice::ByteSeq checksum;
115 long long int size;
119 bool executable;
120
125 std::tuple<const ::std::string&, const ::Ice::ByteSeq&, const long long int&, const bool&> ice_tuple() const
126 {
127 return std::tie(path, checksum, size, executable);
128 }
129};
130
134using LargeFileInfoSeq = ::std::vector<LargeFileInfo>;
135
136using Ice::operator<;
137using Ice::operator<=;
138using Ice::operator>;
139using Ice::operator>=;
140using Ice::operator==;
141using Ice::operator!=;
142
143}
144
146namespace Ice
147{
148
149template<>
150struct StreamableTraits<::IcePatch2::FileInfo>
151{
152 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
153 static const int minWireSize = 7;
154 static const bool fixedLength = false;
155};
156
157template<typename S>
158struct StreamReader<::IcePatch2::FileInfo, S>
159{
160 static void read(S* istr, ::IcePatch2::FileInfo& v)
161 {
162 istr->readAll(v.path, v.checksum, v.size, v.executable);
163 }
164};
165
166template<>
167struct StreamableTraits<::IcePatch2::LargeFileInfo>
168{
169 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
170 static const int minWireSize = 11;
171 static const bool fixedLength = false;
172};
173
174template<typename S>
175struct StreamReader<::IcePatch2::LargeFileInfo, S>
176{
177 static void read(S* istr, ::IcePatch2::LargeFileInfo& v)
178 {
179 istr->readAll(v.path, v.checksum, v.size, v.executable);
180 }
181};
182
183}
185
186#else // C++98 mapping
187
188namespace IcePatch2
189{
190
195struct FileInfo
196{
200 ::std::string path;
204 ::Ice::ByteSeq checksum;
208 ::Ice::Int size;
212 bool executable;
213};
214
218typedef ::std::vector<FileInfo> FileInfoSeq;
219
224struct LargeFileInfo
225{
229 ::std::string path;
233 ::Ice::ByteSeq checksum;
237 ::Ice::Long size;
241 bool executable;
242};
243
247typedef ::std::vector<LargeFileInfo> LargeFileInfoSeq;
248
249}
250
252namespace Ice
253{
254
255template<>
256struct StreamableTraits< ::IcePatch2::FileInfo>
257{
258 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
259 static const int minWireSize = 7;
260 static const bool fixedLength = false;
261};
262
263template<typename S>
264struct StreamWriter< ::IcePatch2::FileInfo, S>
265{
266 static void write(S* ostr, const ::IcePatch2::FileInfo& v)
267 {
268 ostr->write(v.path);
269 ostr->write(v.checksum);
270 ostr->write(v.size);
271 ostr->write(v.executable);
272 }
273};
274
275template<typename S>
276struct StreamReader< ::IcePatch2::FileInfo, S>
277{
278 static void read(S* istr, ::IcePatch2::FileInfo& v)
279 {
280 istr->read(v.path);
281 istr->read(v.checksum);
282 istr->read(v.size);
283 istr->read(v.executable);
284 }
285};
286
287template<>
288struct StreamableTraits< ::IcePatch2::LargeFileInfo>
289{
290 static const StreamHelperCategory helper = StreamHelperCategoryStruct;
291 static const int minWireSize = 11;
292 static const bool fixedLength = false;
293};
294
295template<typename S>
296struct StreamWriter< ::IcePatch2::LargeFileInfo, S>
297{
298 static void write(S* ostr, const ::IcePatch2::LargeFileInfo& v)
299 {
300 ostr->write(v.path);
301 ostr->write(v.checksum);
302 ostr->write(v.size);
303 ostr->write(v.executable);
304 }
305};
306
307template<typename S>
308struct StreamReader< ::IcePatch2::LargeFileInfo, S>
309{
310 static void read(S* istr, ::IcePatch2::LargeFileInfo& v)
311 {
312 istr->read(v.path);
313 istr->read(v.checksum);
314 istr->read(v.size);
315 istr->read(v.executable);
316 }
317};
318
319}
321
322#endif
323
325#endif
Definition BuiltinSequences.h:113
int Int
The mapping for the Slice int type.
Definition Config.h:54
IceUtil::Int64 Long
The mapping for the Slice long type.
Definition Config.h:60
::std::vector< Byte > ByteSeq
A sequence of bytes.
Definition BuiltinSequences.h:123