libdatadog 0.9.0.1.0-aarch64-linux → 1.0.1.1.0-aarch64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/libdatadog/version.rb +1 -1
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/LICENSE-3rdparty.yml +217 -15
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +121 -151
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/profiling.h +69 -37
- data/vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/LICENSE-3rdparty.yml +217 -15
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
- data/vendor/{libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/common.h +121 -151
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/profiling.h +69 -37
- data/vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
- data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
- metadata +17 -19
- data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -78
- data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
- data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -78
- data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
File without changes
|
@@ -1,10 +1,11 @@
|
|
1
1
|
// Unless explicitly stated otherwise all files in this repository are licensed under the Apache License Version 2.0.
|
2
2
|
// This product includes software developed at Datadog (https://www.datadoghq.com/). Copyright 2021-Present Datadog, Inc.
|
3
3
|
|
4
|
-
|
5
4
|
#ifndef DDOG_COMMON_H
|
6
5
|
#define DDOG_COMMON_H
|
7
6
|
|
7
|
+
#pragma once
|
8
|
+
|
8
9
|
#include <stdbool.h>
|
9
10
|
#include <stddef.h>
|
10
11
|
#include <stdint.h>
|
@@ -44,135 +45,103 @@ typedef struct ddog_Tag ddog_Tag;
|
|
44
45
|
/**
|
45
46
|
* Holds the raw parts of a Rust Vec; it should only be created from Rust,
|
46
47
|
* never from C.
|
47
|
-
* The names ptr and len were chosen to minimize conversion from a previous
|
48
|
-
* Buffer type which this has replaced to become more general.
|
49
48
|
*/
|
50
|
-
typedef struct
|
49
|
+
typedef struct ddog_Vec_Tag {
|
51
50
|
const struct ddog_Tag *ptr;
|
52
51
|
uintptr_t len;
|
53
52
|
uintptr_t capacity;
|
54
|
-
}
|
53
|
+
} ddog_Vec_Tag;
|
55
54
|
|
56
55
|
/**
|
57
56
|
* Holds the raw parts of a Rust Vec; it should only be created from Rust,
|
58
57
|
* never from C.
|
59
|
-
* The names ptr and len were chosen to minimize conversion from a previous
|
60
|
-
* Buffer type which this has replaced to become more general.
|
61
58
|
*/
|
62
|
-
typedef struct
|
59
|
+
typedef struct ddog_Vec_U8 {
|
63
60
|
const uint8_t *ptr;
|
64
61
|
uintptr_t len;
|
65
62
|
uintptr_t capacity;
|
66
|
-
}
|
63
|
+
} ddog_Vec_U8;
|
67
64
|
|
68
|
-
typedef enum
|
69
|
-
|
70
|
-
|
71
|
-
}
|
65
|
+
typedef enum ddog_Vec_Tag_PushResult_Tag {
|
66
|
+
DDOG_VEC_TAG_PUSH_RESULT_OK,
|
67
|
+
DDOG_VEC_TAG_PUSH_RESULT_ERR,
|
68
|
+
} ddog_Vec_Tag_PushResult_Tag;
|
72
69
|
|
73
|
-
typedef struct
|
74
|
-
|
70
|
+
typedef struct ddog_Vec_Tag_PushResult {
|
71
|
+
ddog_Vec_Tag_PushResult_Tag tag;
|
75
72
|
union {
|
76
73
|
struct {
|
77
|
-
struct
|
74
|
+
struct ddog_Vec_U8 err;
|
78
75
|
};
|
79
76
|
};
|
80
|
-
}
|
77
|
+
} ddog_Vec_Tag_PushResult;
|
81
78
|
|
82
79
|
/**
|
83
80
|
* Remember, the data inside of each member is potentially coming from FFI,
|
84
81
|
* so every operation on it is unsafe!
|
85
82
|
*/
|
86
|
-
typedef struct
|
83
|
+
typedef struct ddog_Slice_CChar {
|
87
84
|
const char *ptr;
|
88
85
|
uintptr_t len;
|
89
|
-
}
|
90
|
-
|
91
|
-
typedef struct ddog_Slice_c_char ddog_CharSlice;
|
92
|
-
|
93
|
-
typedef struct ddog_ParseTagsResult {
|
94
|
-
struct ddog_Vec_tag tags;
|
95
|
-
struct ddog_Vec_u8 *error_message;
|
96
|
-
} ddog_ParseTagsResult;
|
97
|
-
|
98
|
-
typedef enum ddog_LogLevel {
|
99
|
-
DDOG_LOG_LEVEL_ERROR,
|
100
|
-
DDOG_LOG_LEVEL_WARN,
|
101
|
-
DDOG_LOG_LEVEL_DEBUG,
|
102
|
-
} ddog_LogLevel;
|
103
|
-
|
104
|
-
typedef struct ddog_TelemetryWorkerBuilder ddog_TelemetryWorkerBuilder;
|
105
|
-
|
106
|
-
typedef struct ddog_TelemetryWorkerHandle ddog_TelemetryWorkerHandle;
|
86
|
+
} ddog_Slice_CChar;
|
107
87
|
|
108
|
-
typedef
|
109
|
-
DDOG_OPTION_VEC_U8_SOME_VEC_U8,
|
110
|
-
DDOG_OPTION_VEC_U8_NONE_VEC_U8,
|
111
|
-
} ddog_Option_vec_u8_Tag;
|
88
|
+
typedef struct ddog_Slice_CChar ddog_CharSlice;
|
112
89
|
|
113
|
-
typedef struct
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
struct ddog_Vec_u8 some;
|
118
|
-
};
|
119
|
-
};
|
120
|
-
} ddog_Option_vec_u8;
|
121
|
-
|
122
|
-
typedef struct ddog_Option_vec_u8 ddog_MaybeError;
|
123
|
-
|
124
|
-
typedef enum ddog_Option_bool_Tag {
|
125
|
-
DDOG_OPTION_BOOL_SOME_BOOL,
|
126
|
-
DDOG_OPTION_BOOL_NONE_BOOL,
|
127
|
-
} ddog_Option_bool_Tag;
|
128
|
-
|
129
|
-
typedef struct ddog_Option_bool {
|
130
|
-
ddog_Option_bool_Tag tag;
|
131
|
-
union {
|
132
|
-
struct {
|
133
|
-
bool some;
|
134
|
-
};
|
135
|
-
};
|
136
|
-
} ddog_Option_bool;
|
90
|
+
typedef struct ddog_Vec_Tag_ParseResult {
|
91
|
+
struct ddog_Vec_Tag tags;
|
92
|
+
struct ddog_Vec_U8 *error_message;
|
93
|
+
} ddog_Vec_Tag_ParseResult;
|
137
94
|
|
138
95
|
typedef struct ddog_CancellationToken ddog_CancellationToken;
|
139
96
|
|
140
|
-
typedef struct
|
97
|
+
typedef struct ddog_prof_Profile ddog_prof_Profile;
|
141
98
|
|
142
|
-
typedef struct
|
99
|
+
typedef struct ddog_prof_Exporter ddog_prof_Exporter;
|
100
|
+
|
101
|
+
typedef struct ddog_prof_ProfiledEndpointsStats ddog_prof_ProfiledEndpointsStats;
|
143
102
|
|
144
103
|
/**
|
145
104
|
* This type only exists to workaround a bug in cbindgen; may be removed in the
|
146
105
|
* future.
|
147
106
|
*/
|
148
|
-
typedef struct
|
107
|
+
typedef struct ddog_prof_Exporter_Request ddog_prof_Exporter_Request;
|
108
|
+
|
109
|
+
/**
|
110
|
+
* Holds the raw parts of a Rust Vec; it should only be created from Rust,
|
111
|
+
* never from C.
|
112
|
+
*/
|
113
|
+
typedef struct ddog_prof_Vec_U8 {
|
114
|
+
const uint8_t *ptr;
|
115
|
+
uintptr_t len;
|
116
|
+
uintptr_t capacity;
|
117
|
+
} ddog_prof_Vec_U8;
|
149
118
|
|
150
|
-
typedef enum
|
151
|
-
|
152
|
-
|
153
|
-
}
|
119
|
+
typedef enum ddog_prof_Exporter_NewResult_Tag {
|
120
|
+
DDOG_PROF_EXPORTER_NEW_RESULT_OK,
|
121
|
+
DDOG_PROF_EXPORTER_NEW_RESULT_ERR,
|
122
|
+
} ddog_prof_Exporter_NewResult_Tag;
|
154
123
|
|
155
|
-
typedef struct
|
156
|
-
|
124
|
+
typedef struct ddog_prof_Exporter_NewResult {
|
125
|
+
ddog_prof_Exporter_NewResult_Tag tag;
|
157
126
|
union {
|
158
127
|
struct {
|
159
|
-
struct
|
128
|
+
struct ddog_prof_Exporter *ok;
|
160
129
|
};
|
161
130
|
struct {
|
162
|
-
struct
|
131
|
+
struct ddog_prof_Vec_U8 err;
|
163
132
|
};
|
164
133
|
};
|
165
|
-
}
|
134
|
+
} ddog_prof_Exporter_NewResult;
|
166
135
|
|
167
136
|
typedef enum ddog_Endpoint_Tag {
|
168
137
|
DDOG_ENDPOINT_AGENT,
|
169
138
|
DDOG_ENDPOINT_AGENTLESS,
|
170
139
|
} ddog_Endpoint_Tag;
|
171
140
|
|
172
|
-
typedef struct
|
141
|
+
typedef struct ddog_Endpoint_ddog_prof_Agentless_Body {
|
173
142
|
ddog_CharSlice _0;
|
174
143
|
ddog_CharSlice _1;
|
175
|
-
}
|
144
|
+
} ddog_Endpoint_ddog_prof_Agentless_Body;
|
176
145
|
|
177
146
|
typedef struct ddog_Endpoint {
|
178
147
|
ddog_Endpoint_Tag tag;
|
@@ -180,7 +149,7 @@ typedef struct ddog_Endpoint {
|
|
180
149
|
struct {
|
181
150
|
ddog_CharSlice agent;
|
182
151
|
};
|
183
|
-
|
152
|
+
ddog_Endpoint_ddog_prof_Agentless_Body AGENTLESS;
|
184
153
|
};
|
185
154
|
} ddog_Endpoint;
|
186
155
|
|
@@ -196,71 +165,71 @@ typedef struct ddog_Timespec {
|
|
196
165
|
* Remember, the data inside of each member is potentially coming from FFI,
|
197
166
|
* so every operation on it is unsafe!
|
198
167
|
*/
|
199
|
-
typedef struct
|
168
|
+
typedef struct ddog_Slice_U8 {
|
200
169
|
const uint8_t *ptr;
|
201
170
|
uintptr_t len;
|
202
|
-
}
|
171
|
+
} ddog_Slice_U8;
|
203
172
|
|
204
173
|
/**
|
205
174
|
* Use to represent bytes -- does not need to be valid UTF-8.
|
206
175
|
*/
|
207
|
-
typedef struct
|
176
|
+
typedef struct ddog_Slice_U8 ddog_ByteSlice;
|
208
177
|
|
209
|
-
typedef struct
|
178
|
+
typedef struct ddog_prof_Exporter_File {
|
210
179
|
ddog_CharSlice name;
|
211
180
|
ddog_ByteSlice file;
|
212
|
-
}
|
181
|
+
} ddog_prof_Exporter_File;
|
213
182
|
|
214
183
|
/**
|
215
184
|
* Remember, the data inside of each member is potentially coming from FFI,
|
216
185
|
* so every operation on it is unsafe!
|
217
186
|
*/
|
218
|
-
typedef struct
|
219
|
-
const struct
|
187
|
+
typedef struct ddog_prof_Exporter_Slice_File {
|
188
|
+
const struct ddog_prof_Exporter_File *ptr;
|
220
189
|
uintptr_t len;
|
221
|
-
}
|
190
|
+
} ddog_prof_Exporter_Slice_File;
|
222
191
|
|
223
192
|
typedef struct ddog_HttpStatus {
|
224
193
|
uint16_t code;
|
225
194
|
} ddog_HttpStatus;
|
226
195
|
|
227
|
-
typedef enum
|
228
|
-
|
229
|
-
|
230
|
-
}
|
196
|
+
typedef enum ddog_prof_Exporter_SendResult_Tag {
|
197
|
+
DDOG_PROF_EXPORTER_SEND_RESULT_HTTP_RESPONSE,
|
198
|
+
DDOG_PROF_EXPORTER_SEND_RESULT_ERR,
|
199
|
+
} ddog_prof_Exporter_SendResult_Tag;
|
231
200
|
|
232
|
-
typedef struct
|
233
|
-
|
201
|
+
typedef struct ddog_prof_Exporter_SendResult {
|
202
|
+
ddog_prof_Exporter_SendResult_Tag tag;
|
234
203
|
union {
|
235
204
|
struct {
|
236
205
|
struct ddog_HttpStatus http_response;
|
237
206
|
};
|
238
207
|
struct {
|
239
|
-
struct
|
208
|
+
struct ddog_prof_Vec_U8 err;
|
240
209
|
};
|
241
210
|
};
|
242
|
-
}
|
211
|
+
} ddog_prof_Exporter_SendResult;
|
243
212
|
|
244
|
-
typedef struct
|
213
|
+
typedef struct ddog_prof_ValueType {
|
245
214
|
ddog_CharSlice type_;
|
246
215
|
ddog_CharSlice unit;
|
247
|
-
}
|
216
|
+
} ddog_prof_ValueType;
|
248
217
|
|
249
218
|
/**
|
250
219
|
* Remember, the data inside of each member is potentially coming from FFI,
|
251
220
|
* so every operation on it is unsafe!
|
252
221
|
*/
|
253
|
-
typedef struct
|
254
|
-
const struct
|
222
|
+
typedef struct ddog_prof_Slice_ValueType {
|
223
|
+
const struct ddog_prof_ValueType *ptr;
|
255
224
|
uintptr_t len;
|
256
|
-
}
|
225
|
+
} ddog_prof_Slice_ValueType;
|
257
226
|
|
258
|
-
typedef struct
|
259
|
-
struct
|
227
|
+
typedef struct ddog_prof_Period {
|
228
|
+
struct ddog_prof_ValueType type_;
|
260
229
|
int64_t value;
|
261
|
-
}
|
230
|
+
} ddog_prof_Period;
|
262
231
|
|
263
|
-
typedef struct
|
232
|
+
typedef struct ddog_prof_Mapping {
|
264
233
|
/**
|
265
234
|
* Address at which the binary (or DLL) is loaded into memory.
|
266
235
|
*/
|
@@ -285,9 +254,9 @@ typedef struct ddog_Mapping {
|
|
285
254
|
* it could be the contents of the .note.gnu.build-id field.
|
286
255
|
*/
|
287
256
|
ddog_CharSlice build_id;
|
288
|
-
}
|
257
|
+
} ddog_prof_Mapping;
|
289
258
|
|
290
|
-
typedef struct
|
259
|
+
typedef struct ddog_prof_Function {
|
291
260
|
/**
|
292
261
|
* Name of the function, in human-readable form if available.
|
293
262
|
*/
|
@@ -305,33 +274,33 @@ typedef struct ddog_Function {
|
|
305
274
|
* Line number in source file.
|
306
275
|
*/
|
307
276
|
int64_t start_line;
|
308
|
-
}
|
277
|
+
} ddog_prof_Function;
|
309
278
|
|
310
|
-
typedef struct
|
279
|
+
typedef struct ddog_prof_Line {
|
311
280
|
/**
|
312
281
|
* The corresponding profile.Function for this line.
|
313
282
|
*/
|
314
|
-
struct
|
283
|
+
struct ddog_prof_Function function;
|
315
284
|
/**
|
316
285
|
* Line number in source code.
|
317
286
|
*/
|
318
287
|
int64_t line;
|
319
|
-
}
|
288
|
+
} ddog_prof_Line;
|
320
289
|
|
321
290
|
/**
|
322
291
|
* Remember, the data inside of each member is potentially coming from FFI,
|
323
292
|
* so every operation on it is unsafe!
|
324
293
|
*/
|
325
|
-
typedef struct
|
326
|
-
const struct
|
294
|
+
typedef struct ddog_prof_Slice_Line {
|
295
|
+
const struct ddog_prof_Line *ptr;
|
327
296
|
uintptr_t len;
|
328
|
-
}
|
297
|
+
} ddog_prof_Slice_Line;
|
329
298
|
|
330
|
-
typedef struct
|
299
|
+
typedef struct ddog_prof_Location {
|
331
300
|
/**
|
332
301
|
* todo: how to handle unknown mapping?
|
333
302
|
*/
|
334
|
-
struct
|
303
|
+
struct ddog_prof_Mapping mapping;
|
335
304
|
/**
|
336
305
|
* The instruction address for this location, if available. It
|
337
306
|
* should be within [Mapping.memory_start...Mapping.memory_limit]
|
@@ -349,7 +318,7 @@ typedef struct ddog_Location {
|
|
349
318
|
* line[0].function_name == "memcpy"
|
350
319
|
* line[1].function_name == "printf"
|
351
320
|
*/
|
352
|
-
struct
|
321
|
+
struct ddog_prof_Slice_Line lines;
|
353
322
|
/**
|
354
323
|
* Provides an indication that multiple symbols map to this location's
|
355
324
|
* address, for example due to identical code folding by the linker. In that
|
@@ -358,27 +327,27 @@ typedef struct ddog_Location {
|
|
358
327
|
* profile changes.
|
359
328
|
*/
|
360
329
|
bool is_folded;
|
361
|
-
}
|
330
|
+
} ddog_prof_Location;
|
362
331
|
|
363
332
|
/**
|
364
333
|
* Remember, the data inside of each member is potentially coming from FFI,
|
365
334
|
* so every operation on it is unsafe!
|
366
335
|
*/
|
367
|
-
typedef struct
|
368
|
-
const struct
|
336
|
+
typedef struct ddog_prof_Slice_Location {
|
337
|
+
const struct ddog_prof_Location *ptr;
|
369
338
|
uintptr_t len;
|
370
|
-
}
|
339
|
+
} ddog_prof_Slice_Location;
|
371
340
|
|
372
341
|
/**
|
373
342
|
* Remember, the data inside of each member is potentially coming from FFI,
|
374
343
|
* so every operation on it is unsafe!
|
375
344
|
*/
|
376
|
-
typedef struct
|
345
|
+
typedef struct ddog_Slice_I64 {
|
377
346
|
const int64_t *ptr;
|
378
347
|
uintptr_t len;
|
379
|
-
}
|
348
|
+
} ddog_Slice_I64;
|
380
349
|
|
381
|
-
typedef struct
|
350
|
+
typedef struct ddog_prof_Label {
|
382
351
|
ddog_CharSlice key;
|
383
352
|
/**
|
384
353
|
* At most one of the following must be present
|
@@ -395,22 +364,22 @@ typedef struct ddog_Label {
|
|
395
364
|
* and apply appropriate unit conversions to these.
|
396
365
|
*/
|
397
366
|
ddog_CharSlice num_unit;
|
398
|
-
}
|
367
|
+
} ddog_prof_Label;
|
399
368
|
|
400
369
|
/**
|
401
370
|
* Remember, the data inside of each member is potentially coming from FFI,
|
402
371
|
* so every operation on it is unsafe!
|
403
372
|
*/
|
404
|
-
typedef struct
|
405
|
-
const struct
|
373
|
+
typedef struct ddog_prof_Slice_Label {
|
374
|
+
const struct ddog_prof_Label *ptr;
|
406
375
|
uintptr_t len;
|
407
|
-
}
|
376
|
+
} ddog_prof_Slice_Label;
|
408
377
|
|
409
|
-
typedef struct
|
378
|
+
typedef struct ddog_prof_Sample {
|
410
379
|
/**
|
411
380
|
* The leaf is at locations[0].
|
412
381
|
*/
|
413
|
-
struct
|
382
|
+
struct ddog_prof_Slice_Location locations;
|
414
383
|
/**
|
415
384
|
* The type and unit of each value is defined by the corresponding
|
416
385
|
* entry in Profile.sample_type. All samples must have the same
|
@@ -419,42 +388,43 @@ typedef struct ddog_Sample {
|
|
419
388
|
* result has a list of values that is the element-wise sum of the
|
420
389
|
* lists of the originals.
|
421
390
|
*/
|
422
|
-
struct
|
391
|
+
struct ddog_Slice_I64 values;
|
423
392
|
/**
|
424
393
|
* label includes additional context for this sample. It can include
|
425
394
|
* things like a thread id, allocation size, etc
|
426
395
|
*/
|
427
|
-
struct
|
428
|
-
}
|
396
|
+
struct ddog_prof_Slice_Label labels;
|
397
|
+
} ddog_prof_Sample;
|
429
398
|
|
430
|
-
typedef struct
|
399
|
+
typedef struct ddog_prof_EncodedProfile {
|
431
400
|
struct ddog_Timespec start;
|
432
401
|
struct ddog_Timespec end;
|
433
|
-
struct
|
434
|
-
|
402
|
+
struct ddog_prof_Vec_U8 buffer;
|
403
|
+
struct ddog_prof_ProfiledEndpointsStats *endpoints_stats;
|
404
|
+
} ddog_prof_EncodedProfile;
|
435
405
|
|
436
|
-
typedef enum
|
437
|
-
|
438
|
-
|
439
|
-
}
|
406
|
+
typedef enum ddog_prof_Profile_SerializeResult_Tag {
|
407
|
+
DDOG_PROF_PROFILE_SERIALIZE_RESULT_OK,
|
408
|
+
DDOG_PROF_PROFILE_SERIALIZE_RESULT_ERR,
|
409
|
+
} ddog_prof_Profile_SerializeResult_Tag;
|
440
410
|
|
441
|
-
typedef struct
|
442
|
-
|
411
|
+
typedef struct ddog_prof_Profile_SerializeResult {
|
412
|
+
ddog_prof_Profile_SerializeResult_Tag tag;
|
443
413
|
union {
|
444
414
|
struct {
|
445
|
-
struct
|
415
|
+
struct ddog_prof_EncodedProfile ok;
|
446
416
|
};
|
447
417
|
struct {
|
448
|
-
struct
|
418
|
+
struct ddog_prof_Vec_U8 err;
|
449
419
|
};
|
450
420
|
};
|
451
|
-
}
|
421
|
+
} ddog_prof_Profile_SerializeResult;
|
452
422
|
|
453
|
-
DDOG_CHECK_RETURN struct
|
423
|
+
DDOG_CHECK_RETURN struct ddog_Vec_Tag ddog_Vec_Tag_new(void);
|
454
424
|
|
455
|
-
void
|
425
|
+
void ddog_Vec_Tag_drop(struct ddog_Vec_Tag);
|
456
426
|
|
457
|
-
void
|
427
|
+
void ddog_Vec_Tag_PushResult_drop(struct ddog_Vec_Tag_PushResult);
|
458
428
|
|
459
429
|
/**
|
460
430
|
* Creates a new Tag from the provided `key` and `value` by doing a utf8
|
@@ -467,15 +437,15 @@ void ddog_PushTagResult_drop(struct ddog_PushTagResult);
|
|
467
437
|
* `.len` properties claim.
|
468
438
|
*/
|
469
439
|
DDOG_CHECK_RETURN
|
470
|
-
struct
|
471
|
-
|
472
|
-
|
440
|
+
struct ddog_Vec_Tag_PushResult ddog_Vec_Tag_push(struct ddog_Vec_Tag *vec,
|
441
|
+
ddog_CharSlice key,
|
442
|
+
ddog_CharSlice value);
|
473
443
|
|
474
444
|
/**
|
475
445
|
* # Safety
|
476
446
|
* The `string`'s .ptr must point to a valid object at least as large as its
|
477
447
|
* .len property.
|
478
448
|
*/
|
479
|
-
DDOG_CHECK_RETURN struct
|
449
|
+
DDOG_CHECK_RETURN struct ddog_Vec_Tag_ParseResult ddog_Vec_Tag_parse(ddog_CharSlice string);
|
480
450
|
|
481
451
|
#endif /* DDOG_COMMON_H */
|