MCPcopy Create free account
hub / github.com/apache/qpid-proton / pni_decoder_decode_value

Function pni_decoder_decode_value

c/src/core/decoder.c:184–439  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

182void pni_data_set_array_type(pn_data_t *data, pn_type_t type);
183
184static int pni_decoder_decode_value(pn_decoder_t *decoder, pn_data_t *data, uint8_t code)
185{
186 int err;
187 conv_t conv;
188 pn_decimal128_t dec128;
189 pn_uuid_t uuid;
190 size_t size;
191 size_t count;
192
193 switch (code)
194 {
195 case PNE_NULL:
196 err = pn_data_put_null(data);
197 break;
198 case PNE_TRUE:
199 err = pn_data_put_bool(data, true);
200 break;
201 case PNE_FALSE:
202 err = pn_data_put_bool(data, false);
203 break;
204 case PNE_BOOLEAN:
205 if (!pn_decoder_remaining(decoder)) return PN_UNDERFLOW;
206 err = pn_data_put_bool(data, pn_decoder_readf8(decoder) != 0);
207 break;
208 case PNE_UBYTE:
209 if (!pn_decoder_remaining(decoder)) return PN_UNDERFLOW;
210 err = pn_data_put_ubyte(data, pn_decoder_readf8(decoder));
211 break;
212 case PNE_BYTE:
213 if (!pn_decoder_remaining(decoder)) return PN_UNDERFLOW;
214 err = pn_data_put_byte(data, pn_decoder_readf8(decoder));
215 break;
216 case PNE_USHORT:
217 if (pn_decoder_remaining(decoder) < 2) return PN_UNDERFLOW;
218 err = pn_data_put_ushort(data, pn_decoder_readf16(decoder));
219 break;
220 case PNE_SHORT:
221 if (pn_decoder_remaining(decoder) < 2) return PN_UNDERFLOW;
222 err = pn_data_put_short(data, pn_decoder_readf16(decoder));
223 break;
224 case PNE_UINT:
225 if (pn_decoder_remaining(decoder) < 4) return PN_UNDERFLOW;
226 err = pn_data_put_uint(data, pn_decoder_readf32(decoder));
227 break;
228 case PNE_UINT0:
229 err = pn_data_put_uint(data, 0);
230 break;
231 case PNE_SMALLUINT:
232 if (!pn_decoder_remaining(decoder)) return PN_UNDERFLOW;
233 err = pn_data_put_uint(data, pn_decoder_readf8(decoder));
234 break;
235 case PNE_SMALLINT:
236 if (!pn_decoder_remaining(decoder)) return PN_UNDERFLOW;
237 err = pn_data_put_int(data, (int8_t)pn_decoder_readf8(decoder));
238 break;
239 case PNE_INT:
240 if (pn_decoder_remaining(decoder) < 4) return PN_UNDERFLOW;
241 err = pn_data_put_int(data, pn_decoder_readf32(decoder));

Callers 2

pni_decoder_singleFunction · 0.85

Calls 15

pn_data_put_nullFunction · 0.85
pn_data_put_boolFunction · 0.85
pn_decoder_remainingFunction · 0.85
pn_decoder_readf8Function · 0.85
pn_data_put_ubyteFunction · 0.85
pn_data_put_byteFunction · 0.85
pn_data_put_ushortFunction · 0.85
pn_decoder_readf16Function · 0.85
pn_data_put_shortFunction · 0.85
pn_data_put_uintFunction · 0.85
pn_decoder_readf32Function · 0.85
pn_data_put_intFunction · 0.85

Tested by

no test coverage detected