libdatadog 0.9.0.1.0 → 1.0.1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/lib/libdatadog/version.rb +1 -1
  3. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
  4. 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
  5. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
  6. data/vendor/{libdatadog-0.9.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/common.h +121 -151
  7. 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/profiling.h +69 -37
  8. data/vendor/libdatadog-1.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  9. 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
  10. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
  11. 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
  12. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
  13. 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
  14. data/vendor/{libdatadog-0.9.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl → libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +69 -37
  15. data/vendor/libdatadog-1.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  16. 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
  17. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE +0 -0
  18. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/LICENSE-3rdparty.yml +217 -15
  19. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/NOTICE +0 -0
  20. data/vendor/{libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-1.0.1/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu}/include/datadog/common.h +121 -151
  21. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/profiling.h +69 -37
  22. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  23. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
  24. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE +0 -0
  25. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/LICENSE-3rdparty.yml +217 -15
  26. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/NOTICE +0 -0
  27. data/vendor/{libdatadog-0.9.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu → libdatadog-1.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/common.h +121 -151
  28. data/vendor/{libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-1.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl}/include/datadog/profiling.h +69 -37
  29. data/vendor/libdatadog-1.0.1/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  30. data/vendor/{libdatadog-0.9.0 → libdatadog-1.0.1}/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +1 -1
  31. metadata +31 -35
  32. data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +0 -78
  33. data/vendor/libdatadog-0.9.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/libdatadog_profiling.so +0 -0
  34. data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +0 -78
  35. data/vendor/libdatadog-0.9.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
  36. data/vendor/libdatadog-0.9.0/x86_64-linux/libdatadog-x86_64-unknown-linux-gnu/include/datadog/telemetry.h +0 -78
  37. data/vendor/libdatadog-0.9.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/include/datadog/telemetry.h +0 -78
  38. data/vendor/libdatadog-0.9.0/x86_64-linux-musl/libdatadog-x86_64-alpine-linux-musl/lib/libdatadog_profiling.so +0 -0
@@ -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 ddog_Vec_tag {
49
+ typedef struct ddog_Vec_Tag {
51
50
  const struct ddog_Tag *ptr;
52
51
  uintptr_t len;
53
52
  uintptr_t capacity;
54
- } ddog_Vec_tag;
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 ddog_Vec_u8 {
59
+ typedef struct ddog_Vec_U8 {
63
60
  const uint8_t *ptr;
64
61
  uintptr_t len;
65
62
  uintptr_t capacity;
66
- } ddog_Vec_u8;
63
+ } ddog_Vec_U8;
67
64
 
68
- typedef enum ddog_PushTagResult_Tag {
69
- DDOG_PUSH_TAG_RESULT_OK,
70
- DDOG_PUSH_TAG_RESULT_ERR,
71
- } ddog_PushTagResult_Tag;
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 ddog_PushTagResult {
74
- ddog_PushTagResult_Tag tag;
70
+ typedef struct ddog_Vec_Tag_PushResult {
71
+ ddog_Vec_Tag_PushResult_Tag tag;
75
72
  union {
76
73
  struct {
77
- struct ddog_Vec_u8 err;
74
+ struct ddog_Vec_U8 err;
78
75
  };
79
76
  };
80
- } ddog_PushTagResult;
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 ddog_Slice_c_char {
83
+ typedef struct ddog_Slice_CChar {
87
84
  const char *ptr;
88
85
  uintptr_t len;
89
- } ddog_Slice_c_char;
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 enum ddog_Option_vec_u8_Tag {
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 ddog_Option_vec_u8 {
114
- ddog_Option_vec_u8_Tag tag;
115
- union {
116
- struct {
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 ddog_Profile ddog_Profile;
97
+ typedef struct ddog_prof_Profile ddog_prof_Profile;
141
98
 
142
- typedef struct ddog_ProfileExporter ddog_ProfileExporter;
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 ddog_Request ddog_Request;
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 ddog_NewProfileExporterResult_Tag {
151
- DDOG_NEW_PROFILE_EXPORTER_RESULT_OK,
152
- DDOG_NEW_PROFILE_EXPORTER_RESULT_ERR,
153
- } ddog_NewProfileExporterResult_Tag;
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 ddog_NewProfileExporterResult {
156
- ddog_NewProfileExporterResult_Tag tag;
124
+ typedef struct ddog_prof_Exporter_NewResult {
125
+ ddog_prof_Exporter_NewResult_Tag tag;
157
126
  union {
158
127
  struct {
159
- struct ddog_ProfileExporter *ok;
128
+ struct ddog_prof_Exporter *ok;
160
129
  };
161
130
  struct {
162
- struct ddog_Vec_u8 err;
131
+ struct ddog_prof_Vec_U8 err;
163
132
  };
164
133
  };
165
- } ddog_NewProfileExporterResult;
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 ddog_Endpoint_ddog_Agentless_Body {
141
+ typedef struct ddog_Endpoint_ddog_prof_Agentless_Body {
173
142
  ddog_CharSlice _0;
174
143
  ddog_CharSlice _1;
175
- } ddog_Endpoint_ddog_Agentless_Body;
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
- ddog_Endpoint_ddog_Agentless_Body AGENTLESS;
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 ddog_Slice_u8 {
168
+ typedef struct ddog_Slice_U8 {
200
169
  const uint8_t *ptr;
201
170
  uintptr_t len;
202
- } ddog_Slice_u8;
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 ddog_Slice_u8 ddog_ByteSlice;
176
+ typedef struct ddog_Slice_U8 ddog_ByteSlice;
208
177
 
209
- typedef struct ddog_File {
178
+ typedef struct ddog_prof_Exporter_File {
210
179
  ddog_CharSlice name;
211
180
  ddog_ByteSlice file;
212
- } ddog_File;
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 ddog_Slice_file {
219
- const struct ddog_File *ptr;
187
+ typedef struct ddog_prof_Exporter_Slice_File {
188
+ const struct ddog_prof_Exporter_File *ptr;
220
189
  uintptr_t len;
221
- } ddog_Slice_file;
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 ddog_SendResult_Tag {
228
- DDOG_SEND_RESULT_HTTP_RESPONSE,
229
- DDOG_SEND_RESULT_ERR,
230
- } ddog_SendResult_Tag;
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 ddog_SendResult {
233
- ddog_SendResult_Tag tag;
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 ddog_Vec_u8 err;
208
+ struct ddog_prof_Vec_U8 err;
240
209
  };
241
210
  };
242
- } ddog_SendResult;
211
+ } ddog_prof_Exporter_SendResult;
243
212
 
244
- typedef struct ddog_ValueType {
213
+ typedef struct ddog_prof_ValueType {
245
214
  ddog_CharSlice type_;
246
215
  ddog_CharSlice unit;
247
- } ddog_ValueType;
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 ddog_Slice_value_type {
254
- const struct ddog_ValueType *ptr;
222
+ typedef struct ddog_prof_Slice_ValueType {
223
+ const struct ddog_prof_ValueType *ptr;
255
224
  uintptr_t len;
256
- } ddog_Slice_value_type;
225
+ } ddog_prof_Slice_ValueType;
257
226
 
258
- typedef struct ddog_Period {
259
- struct ddog_ValueType type_;
227
+ typedef struct ddog_prof_Period {
228
+ struct ddog_prof_ValueType type_;
260
229
  int64_t value;
261
- } ddog_Period;
230
+ } ddog_prof_Period;
262
231
 
263
- typedef struct ddog_Mapping {
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
- } ddog_Mapping;
257
+ } ddog_prof_Mapping;
289
258
 
290
- typedef struct ddog_Function {
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
- } ddog_Function;
277
+ } ddog_prof_Function;
309
278
 
310
- typedef struct ddog_Line {
279
+ typedef struct ddog_prof_Line {
311
280
  /**
312
281
  * The corresponding profile.Function for this line.
313
282
  */
314
- struct ddog_Function function;
283
+ struct ddog_prof_Function function;
315
284
  /**
316
285
  * Line number in source code.
317
286
  */
318
287
  int64_t line;
319
- } ddog_Line;
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 ddog_Slice_line {
326
- const struct ddog_Line *ptr;
294
+ typedef struct ddog_prof_Slice_Line {
295
+ const struct ddog_prof_Line *ptr;
327
296
  uintptr_t len;
328
- } ddog_Slice_line;
297
+ } ddog_prof_Slice_Line;
329
298
 
330
- typedef struct ddog_Location {
299
+ typedef struct ddog_prof_Location {
331
300
  /**
332
301
  * todo: how to handle unknown mapping?
333
302
  */
334
- struct ddog_Mapping mapping;
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 ddog_Slice_line lines;
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
- } ddog_Location;
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 ddog_Slice_location {
368
- const struct ddog_Location *ptr;
336
+ typedef struct ddog_prof_Slice_Location {
337
+ const struct ddog_prof_Location *ptr;
369
338
  uintptr_t len;
370
- } ddog_Slice_location;
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 ddog_Slice_i64 {
345
+ typedef struct ddog_Slice_I64 {
377
346
  const int64_t *ptr;
378
347
  uintptr_t len;
379
- } ddog_Slice_i64;
348
+ } ddog_Slice_I64;
380
349
 
381
- typedef struct ddog_Label {
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
- } ddog_Label;
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 ddog_Slice_label {
405
- const struct ddog_Label *ptr;
373
+ typedef struct ddog_prof_Slice_Label {
374
+ const struct ddog_prof_Label *ptr;
406
375
  uintptr_t len;
407
- } ddog_Slice_label;
376
+ } ddog_prof_Slice_Label;
408
377
 
409
- typedef struct ddog_Sample {
378
+ typedef struct ddog_prof_Sample {
410
379
  /**
411
380
  * The leaf is at locations[0].
412
381
  */
413
- struct ddog_Slice_location locations;
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 ddog_Slice_i64 values;
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 ddog_Slice_label labels;
428
- } ddog_Sample;
396
+ struct ddog_prof_Slice_Label labels;
397
+ } ddog_prof_Sample;
429
398
 
430
- typedef struct ddog_EncodedProfile {
399
+ typedef struct ddog_prof_EncodedProfile {
431
400
  struct ddog_Timespec start;
432
401
  struct ddog_Timespec end;
433
- struct ddog_Vec_u8 buffer;
434
- } ddog_EncodedProfile;
402
+ struct ddog_prof_Vec_U8 buffer;
403
+ struct ddog_prof_ProfiledEndpointsStats *endpoints_stats;
404
+ } ddog_prof_EncodedProfile;
435
405
 
436
- typedef enum ddog_SerializeResult_Tag {
437
- DDOG_SERIALIZE_RESULT_OK,
438
- DDOG_SERIALIZE_RESULT_ERR,
439
- } ddog_SerializeResult_Tag;
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 ddog_SerializeResult {
442
- ddog_SerializeResult_Tag tag;
411
+ typedef struct ddog_prof_Profile_SerializeResult {
412
+ ddog_prof_Profile_SerializeResult_Tag tag;
443
413
  union {
444
414
  struct {
445
- struct ddog_EncodedProfile ok;
415
+ struct ddog_prof_EncodedProfile ok;
446
416
  };
447
417
  struct {
448
- struct ddog_Vec_u8 err;
418
+ struct ddog_prof_Vec_U8 err;
449
419
  };
450
420
  };
451
- } ddog_SerializeResult;
421
+ } ddog_prof_Profile_SerializeResult;
452
422
 
453
- DDOG_CHECK_RETURN struct ddog_Vec_tag ddog_Vec_tag_new(void);
423
+ DDOG_CHECK_RETURN struct ddog_Vec_Tag ddog_Vec_Tag_new(void);
454
424
 
455
- void ddog_Vec_tag_drop(struct ddog_Vec_tag);
425
+ void ddog_Vec_Tag_drop(struct ddog_Vec_Tag);
456
426
 
457
- void ddog_PushTagResult_drop(struct ddog_PushTagResult);
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 ddog_PushTagResult ddog_Vec_tag_push(struct ddog_Vec_tag *vec,
471
- ddog_CharSlice key,
472
- ddog_CharSlice value);
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 ddog_ParseTagsResult ddog_Vec_tag_parse(ddog_CharSlice string);
449
+ DDOG_CHECK_RETURN struct ddog_Vec_Tag_ParseResult ddog_Vec_Tag_parse(ddog_CharSlice string);
480
450
 
481
451
  #endif /* DDOG_COMMON_H */