1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2015 Google Inc. All rights reserved.
3 // https://developers.google.com/protocol-buffers/
4 //
5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are
7 // met:
8 //
9 // * Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer.
11 // * Redistributions in binary form must reproduce the above
12 // copyright notice, this list of conditions and the following disclaimer
13 // in the documentation and/or other materials provided with the
14 // distribution.
15 // * Neither the name of Google Inc. nor the names of its
16 // contributors may be used to endorse or promote products derived from
17 // this software without specific prior written permission.
18 //
19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31 #import "GPBArray.h"
32
33 @class GPBMessage;
34
35 //%PDDM-DEFINE DECLARE_ARRAY_EXTRAS()
36 //%ARRAY_INTERFACE_EXTRAS(Int32, int32_t)
37 //%ARRAY_INTERFACE_EXTRAS(UInt32, uint32_t)
38 //%ARRAY_INTERFACE_EXTRAS(Int64, int64_t)
39 //%ARRAY_INTERFACE_EXTRAS(UInt64, uint64_t)
40 //%ARRAY_INTERFACE_EXTRAS(Float, float)
41 //%ARRAY_INTERFACE_EXTRAS(Double, double)
42 //%ARRAY_INTERFACE_EXTRAS(Bool, BOOL)
43 //%ARRAY_INTERFACE_EXTRAS(Enum, int32_t)
44
45 //%PDDM-DEFINE ARRAY_INTERFACE_EXTRAS(NAME, TYPE)
46 //%#pragma mark - NAME
47 //%
48 //%@interface GPB##NAME##Array () {
49 //% @package
50 //% GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
51 //%}
52 //%@end
53 //%
54
55 //%PDDM-EXPAND DECLARE_ARRAY_EXTRAS()
56 // This block of code is generated, do not edit it directly.
57 // clang-format off
58
59 #pragma mark - Int32
60
GPBInt32Array()61 @interface GPBInt32Array () {
62 @package
63 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
64 }
65 @end
66
67 #pragma mark - UInt32
68
GPBUInt32Array()69 @interface GPBUInt32Array () {
70 @package
71 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
72 }
73 @end
74
75 #pragma mark - Int64
76
GPBInt64Array()77 @interface GPBInt64Array () {
78 @package
79 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
80 }
81 @end
82
83 #pragma mark - UInt64
84
GPBUInt64Array()85 @interface GPBUInt64Array () {
86 @package
87 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
88 }
89 @end
90
91 #pragma mark - Float
92
GPBFloatArray()93 @interface GPBFloatArray () {
94 @package
95 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
96 }
97 @end
98
99 #pragma mark - Double
100
GPBDoubleArray()101 @interface GPBDoubleArray () {
102 @package
103 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
104 }
105 @end
106
107 #pragma mark - Bool
108
GPBBoolArray()109 @interface GPBBoolArray () {
110 @package
111 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
112 }
113 @end
114
115 #pragma mark - Enum
116
GPBEnumArray()117 @interface GPBEnumArray () {
118 @package
119 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
120 }
121 @end
122
123 // clang-format on
124 //%PDDM-EXPAND-END DECLARE_ARRAY_EXTRAS()
125
126 #pragma mark - NSArray Subclass
127
128 @interface GPBAutocreatedArray : NSMutableArray {
129 @package
130 GPB_UNSAFE_UNRETAINED GPBMessage *_autocreator;
131 }
132 @end
133