libdatadog 16.0.1.1.0-aarch64-linux → 19.1.0.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 +2 -2
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE-3rdparty.yml +19675 -12455
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/blazesym.h +435 -229
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/common.h +691 -128
 - data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-19.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/crashtracker.h +118 -14
 - data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-19.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/data-pipeline.h +65 -3
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/library-config.h +18 -6
 - data/vendor/libdatadog-19.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/log.h +63 -0
 - data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-19.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/include/datadog/profiling.h +357 -42
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/include/datadog/telemetry.h +27 -30
 - data/vendor/{libdatadog-16.0.1/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl → libdatadog-19.1.0/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu}/lib/libdatadog_profiling.so +0 -0
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE-3rdparty.yml +19675 -12455
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/bin/libdatadog-crashtracking-receiver +0 -0
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/blazesym.h +435 -229
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/common.h +691 -128
 - data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-19.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/crashtracker.h +118 -14
 - data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-19.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/data-pipeline.h +65 -3
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/library-config.h +18 -6
 - data/vendor/libdatadog-19.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/log.h +63 -0
 - data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-19.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/include/datadog/profiling.h +357 -42
 - data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/include/datadog/telemetry.h +27 -30
 - data/vendor/{libdatadog-16.0.1/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu → libdatadog-19.1.0/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl}/lib/libdatadog_profiling.so +0 -0
 - metadata +32 -33
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/LICENSE +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/NOTICE +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/bin/libdatadog-crashtracking-receiver +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux/libdatadog-aarch64-unknown-linux-gnu/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/LICENSE +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/NOTICE +0 -0
 - /data/vendor/{libdatadog-16.0.1 → libdatadog-19.1.0}/aarch64-linux-musl/libdatadog-aarch64-alpine-linux-musl/lib/pkgconfig/datadog_profiling_with_rpath.pc +0 -0
 
| 
         @@ -257,14 +257,18 @@ typedef struct ddog_Vec_Tag_ParseResult { 
     | 
|
| 
       257 
257 
     | 
    
         
             
              struct ddog_Error *error_message;
         
     | 
| 
       258 
258 
     | 
    
         
             
            } ddog_Vec_Tag_ParseResult;
         
     | 
| 
       259 
259 
     | 
    
         | 
| 
       260 
     | 
    
         
            -
            typedef struct  
     | 
| 
      
 260 
     | 
    
         
            +
            typedef struct ddog_prof_EncodedProfile ddog_prof_EncodedProfile;
         
     | 
| 
       261 
261 
     | 
    
         | 
| 
       262 
262 
     | 
    
         
             
            typedef struct ddog_prof_Exporter ddog_prof_Exporter;
         
     | 
| 
       263 
263 
     | 
    
         | 
| 
       264 
     | 
    
         
            -
            typedef struct ddog_prof_ProfiledEndpointsStats ddog_prof_ProfiledEndpointsStats;
         
     | 
| 
       265 
     | 
    
         
            -
             
     | 
| 
       266 
264 
     | 
    
         
             
            typedef struct ddog_prof_Exporter_Request ddog_prof_Exporter_Request;
         
     | 
| 
       267 
265 
     | 
    
         | 
| 
      
 266 
     | 
    
         
            +
            /**
         
     | 
| 
      
 267 
     | 
    
         
            +
             * A tag is a combination of a wire_type, stored in the least significant
         
     | 
| 
      
 268 
     | 
    
         
            +
             * three bits, and the field number that is defined in the .proto file.
         
     | 
| 
      
 269 
     | 
    
         
            +
             */
         
     | 
| 
      
 270 
     | 
    
         
            +
            typedef struct ddog_Tag ddog_Tag;
         
     | 
| 
      
 271 
     | 
    
         
            +
             
     | 
| 
       268 
272 
     | 
    
         
             
            typedef struct ddog_Slice_U8 {
         
     | 
| 
       269 
273 
     | 
    
         
             
              /**
         
     | 
| 
       270 
274 
     | 
    
         
             
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
         @@ -327,84 +331,124 @@ typedef struct ddog_prof_Endpoint { 
     | 
|
| 
       327 
331 
     | 
    
         
             
              };
         
     | 
| 
       328 
332 
     | 
    
         
             
            } ddog_prof_Endpoint;
         
     | 
| 
       329 
333 
     | 
    
         | 
| 
       330 
     | 
    
         
            -
             
     | 
| 
       331 
     | 
    
         
            -
             
     | 
| 
       332 
     | 
    
         
            -
             
     | 
| 
       333 
     | 
    
         
            -
             
     | 
| 
      
 334 
     | 
    
         
            +
            /**
         
     | 
| 
      
 335 
     | 
    
         
            +
             * Represents an object that should only be referred to by its handle.
         
     | 
| 
      
 336 
     | 
    
         
            +
             * Do not access its member for any reason, only use the C API functions on this struct.
         
     | 
| 
      
 337 
     | 
    
         
            +
             */
         
     | 
| 
      
 338 
     | 
    
         
            +
            typedef struct ddog_prof_ProfileExporter {
         
     | 
| 
      
 339 
     | 
    
         
            +
              struct ddog_prof_Exporter *inner;
         
     | 
| 
      
 340 
     | 
    
         
            +
            } ddog_prof_ProfileExporter;
         
     | 
| 
      
 341 
     | 
    
         
            +
             
     | 
| 
      
 342 
     | 
    
         
            +
            /**
         
     | 
| 
      
 343 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 344 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 345 
     | 
    
         
            +
             */
         
     | 
| 
      
 346 
     | 
    
         
            +
            typedef enum ddog_prof_ProfileExporter_Result_Tag {
         
     | 
| 
      
 347 
     | 
    
         
            +
              DDOG_PROF_PROFILE_EXPORTER_RESULT_OK_HANDLE_PROFILE_EXPORTER,
         
     | 
| 
      
 348 
     | 
    
         
            +
              DDOG_PROF_PROFILE_EXPORTER_RESULT_ERR_HANDLE_PROFILE_EXPORTER,
         
     | 
| 
      
 349 
     | 
    
         
            +
            } ddog_prof_ProfileExporter_Result_Tag;
         
     | 
| 
       334 
350 
     | 
    
         | 
| 
       335 
     | 
    
         
            -
            typedef struct  
     | 
| 
       336 
     | 
    
         
            -
               
     | 
| 
      
 351 
     | 
    
         
            +
            typedef struct ddog_prof_ProfileExporter_Result {
         
     | 
| 
      
 352 
     | 
    
         
            +
              ddog_prof_ProfileExporter_Result_Tag tag;
         
     | 
| 
       337 
353 
     | 
    
         
             
              union {
         
     | 
| 
       338 
354 
     | 
    
         
             
                struct {
         
     | 
| 
       339 
     | 
    
         
            -
                  struct  
     | 
| 
      
 355 
     | 
    
         
            +
                  struct ddog_prof_ProfileExporter ok;
         
     | 
| 
       340 
356 
     | 
    
         
             
                };
         
     | 
| 
       341 
357 
     | 
    
         
             
                struct {
         
     | 
| 
       342 
358 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       343 
359 
     | 
    
         
             
                };
         
     | 
| 
       344 
360 
     | 
    
         
             
              };
         
     | 
| 
       345 
     | 
    
         
            -
            }  
     | 
| 
      
 361 
     | 
    
         
            +
            } ddog_prof_ProfileExporter_Result;
         
     | 
| 
       346 
362 
     | 
    
         | 
| 
       347 
     | 
    
         
            -
             
     | 
| 
       348 
     | 
    
         
            -
             
     | 
| 
       349 
     | 
    
         
            -
             
     | 
| 
       350 
     | 
    
         
            -
             
     | 
| 
      
 363 
     | 
    
         
            +
            /**
         
     | 
| 
      
 364 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 365 
     | 
    
         
            +
             * but there's nothing to return in the case of success.
         
     | 
| 
      
 366 
     | 
    
         
            +
             */
         
     | 
| 
      
 367 
     | 
    
         
            +
            typedef enum ddog_VoidResult_Tag {
         
     | 
| 
      
 368 
     | 
    
         
            +
              DDOG_VOID_RESULT_OK,
         
     | 
| 
      
 369 
     | 
    
         
            +
              DDOG_VOID_RESULT_ERR,
         
     | 
| 
      
 370 
     | 
    
         
            +
            } ddog_VoidResult_Tag;
         
     | 
| 
       351 
371 
     | 
    
         | 
| 
       352 
     | 
    
         
            -
            typedef struct  
     | 
| 
       353 
     | 
    
         
            -
               
     | 
| 
      
 372 
     | 
    
         
            +
            typedef struct ddog_VoidResult {
         
     | 
| 
      
 373 
     | 
    
         
            +
              ddog_VoidResult_Tag tag;
         
     | 
| 
       354 
374 
     | 
    
         
             
              union {
         
     | 
| 
       355 
375 
     | 
    
         
             
                struct {
         
     | 
| 
       356 
     | 
    
         
            -
                  struct ddog_Error  
     | 
| 
      
 376 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
       357 
377 
     | 
    
         
             
                };
         
     | 
| 
       358 
378 
     | 
    
         
             
              };
         
     | 
| 
       359 
     | 
    
         
            -
            }  
     | 
| 
      
 379 
     | 
    
         
            +
            } ddog_VoidResult;
         
     | 
| 
       360 
380 
     | 
    
         | 
| 
       361 
     | 
    
         
            -
             
     | 
| 
      
 381 
     | 
    
         
            +
            /**
         
     | 
| 
      
 382 
     | 
    
         
            +
             * Represents an object that should only be referred to by its handle.
         
     | 
| 
      
 383 
     | 
    
         
            +
             * Do not access its member for any reason, only use the C API functions on this struct.
         
     | 
| 
      
 384 
     | 
    
         
            +
             */
         
     | 
| 
      
 385 
     | 
    
         
            +
            typedef struct ddog_prof_Request {
         
     | 
| 
      
 386 
     | 
    
         
            +
              struct ddog_prof_Exporter_Request *inner;
         
     | 
| 
      
 387 
     | 
    
         
            +
            } ddog_prof_Request;
         
     | 
| 
       362 
388 
     | 
    
         | 
| 
       363 
     | 
    
         
            -
             
     | 
| 
       364 
     | 
    
         
            -
             
     | 
| 
       365 
     | 
    
         
            -
             
     | 
| 
       366 
     | 
    
         
            -
             
     | 
| 
      
 389 
     | 
    
         
            +
            /**
         
     | 
| 
      
 390 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 391 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 392 
     | 
    
         
            +
             */
         
     | 
| 
      
 393 
     | 
    
         
            +
            typedef enum ddog_prof_Request_Result_Tag {
         
     | 
| 
      
 394 
     | 
    
         
            +
              DDOG_PROF_REQUEST_RESULT_OK_HANDLE_REQUEST,
         
     | 
| 
      
 395 
     | 
    
         
            +
              DDOG_PROF_REQUEST_RESULT_ERR_HANDLE_REQUEST,
         
     | 
| 
      
 396 
     | 
    
         
            +
            } ddog_prof_Request_Result_Tag;
         
     | 
| 
       367 
397 
     | 
    
         | 
| 
       368 
     | 
    
         
            -
            typedef struct  
     | 
| 
       369 
     | 
    
         
            -
               
     | 
| 
      
 398 
     | 
    
         
            +
            typedef struct ddog_prof_Request_Result {
         
     | 
| 
      
 399 
     | 
    
         
            +
              ddog_prof_Request_Result_Tag tag;
         
     | 
| 
       370 
400 
     | 
    
         
             
              union {
         
     | 
| 
       371 
401 
     | 
    
         
             
                struct {
         
     | 
| 
       372 
     | 
    
         
            -
                  struct  
     | 
| 
      
 402 
     | 
    
         
            +
                  struct ddog_prof_Request ok;
         
     | 
| 
       373 
403 
     | 
    
         
             
                };
         
     | 
| 
       374 
404 
     | 
    
         
             
                struct {
         
     | 
| 
       375 
405 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       376 
406 
     | 
    
         
             
                };
         
     | 
| 
       377 
407 
     | 
    
         
             
              };
         
     | 
| 
       378 
     | 
    
         
            -
            }  
     | 
| 
      
 408 
     | 
    
         
            +
            } ddog_prof_Request_Result;
         
     | 
| 
       379 
409 
     | 
    
         | 
| 
       380 
410 
     | 
    
         
             
            /**
         
     | 
| 
       381 
     | 
    
         
            -
             * Represents  
     | 
| 
      
 411 
     | 
    
         
            +
             * Represents an object that should only be referred to by its handle.
         
     | 
| 
      
 412 
     | 
    
         
            +
             * Do not access its member for any reason, only use the C API functions on this struct.
         
     | 
| 
       382 
413 
     | 
    
         
             
             */
         
     | 
| 
       383 
     | 
    
         
            -
            typedef struct  
     | 
| 
       384 
     | 
    
         
            -
               
     | 
| 
       385 
     | 
    
         
            -
             
     | 
| 
       386 
     | 
    
         
            -
            } ddog_Timespec;
         
     | 
| 
      
 414 
     | 
    
         
            +
            typedef struct ddog_prof_EncodedProfile {
         
     | 
| 
      
 415 
     | 
    
         
            +
              struct ddog_prof_EncodedProfile *inner;
         
     | 
| 
      
 416 
     | 
    
         
            +
            } ddog_prof_EncodedProfile;
         
     | 
| 
       387 
417 
     | 
    
         | 
| 
       388 
418 
     | 
    
         
             
            typedef struct ddog_HttpStatus {
         
     | 
| 
       389 
419 
     | 
    
         
             
              uint16_t code;
         
     | 
| 
       390 
420 
     | 
    
         
             
            } ddog_HttpStatus;
         
     | 
| 
       391 
421 
     | 
    
         | 
| 
       392 
     | 
    
         
            -
             
     | 
| 
       393 
     | 
    
         
            -
             
     | 
| 
       394 
     | 
    
         
            -
             
     | 
| 
       395 
     | 
    
         
            -
             
     | 
| 
      
 422 
     | 
    
         
            +
            /**
         
     | 
| 
      
 423 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 424 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 425 
     | 
    
         
            +
             */
         
     | 
| 
      
 426 
     | 
    
         
            +
            typedef enum ddog_prof_Result_HttpStatus_Tag {
         
     | 
| 
      
 427 
     | 
    
         
            +
              DDOG_PROF_RESULT_HTTP_STATUS_OK_HTTP_STATUS,
         
     | 
| 
      
 428 
     | 
    
         
            +
              DDOG_PROF_RESULT_HTTP_STATUS_ERR_HTTP_STATUS,
         
     | 
| 
      
 429 
     | 
    
         
            +
            } ddog_prof_Result_HttpStatus_Tag;
         
     | 
| 
       396 
430 
     | 
    
         | 
| 
       397 
     | 
    
         
            -
            typedef struct  
     | 
| 
       398 
     | 
    
         
            -
               
     | 
| 
      
 431 
     | 
    
         
            +
            typedef struct ddog_prof_Result_HttpStatus {
         
     | 
| 
      
 432 
     | 
    
         
            +
              ddog_prof_Result_HttpStatus_Tag tag;
         
     | 
| 
       399 
433 
     | 
    
         
             
              union {
         
     | 
| 
       400 
434 
     | 
    
         
             
                struct {
         
     | 
| 
       401 
     | 
    
         
            -
                  struct ddog_HttpStatus  
     | 
| 
      
 435 
     | 
    
         
            +
                  struct ddog_HttpStatus ok;
         
     | 
| 
       402 
436 
     | 
    
         
             
                };
         
     | 
| 
       403 
437 
     | 
    
         
             
                struct {
         
     | 
| 
       404 
438 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       405 
439 
     | 
    
         
             
                };
         
     | 
| 
       406 
440 
     | 
    
         
             
              };
         
     | 
| 
       407 
     | 
    
         
            -
            }  
     | 
| 
      
 441 
     | 
    
         
            +
            } ddog_prof_Result_HttpStatus;
         
     | 
| 
      
 442 
     | 
    
         
            +
             
     | 
| 
      
 443 
     | 
    
         
            +
            typedef struct ddog_OpaqueCancellationToken ddog_prof_TokioCancellationToken;
         
     | 
| 
      
 444 
     | 
    
         
            +
             
     | 
| 
      
 445 
     | 
    
         
            +
            /**
         
     | 
| 
      
 446 
     | 
    
         
            +
             * Represents an object that should only be referred to by its handle.
         
     | 
| 
      
 447 
     | 
    
         
            +
             * Do not access its member for any reason, only use the C API functions on this struct.
         
     | 
| 
      
 448 
     | 
    
         
            +
             */
         
     | 
| 
      
 449 
     | 
    
         
            +
            typedef struct ddog_CancellationToken {
         
     | 
| 
      
 450 
     | 
    
         
            +
              ddog_prof_TokioCancellationToken *inner;
         
     | 
| 
      
 451 
     | 
    
         
            +
            } ddog_CancellationToken;
         
     | 
| 
       408 
452 
     | 
    
         | 
| 
       409 
453 
     | 
    
         
             
            /**
         
     | 
| 
       410 
454 
     | 
    
         
             
             * Represents a profile. Do not access its member for any reason, only use
         
     | 
| 
         @@ -537,10 +581,6 @@ typedef struct ddog_prof_Function { 
     | 
|
| 
       537 
581 
     | 
    
         
             
               */
         
     | 
| 
       538 
582 
     | 
    
         
             
              ddog_CharSlice filename;
         
     | 
| 
       539 
583 
     | 
    
         
             
              struct ddog_prof_ManagedStringId filename_id;
         
     | 
| 
       540 
     | 
    
         
            -
              /**
         
     | 
| 
       541 
     | 
    
         
            -
               * Line number in source file.
         
     | 
| 
       542 
     | 
    
         
            -
               */
         
     | 
| 
       543 
     | 
    
         
            -
              int64_t start_line;
         
     | 
| 
       544 
584 
     | 
    
         
             
            } ddog_prof_Function;
         
     | 
| 
       545 
585 
     | 
    
         | 
| 
       546 
586 
     | 
    
         
             
            typedef struct ddog_prof_Location {
         
     | 
| 
         @@ -659,12 +699,26 @@ typedef struct ddog_prof_Slice_Usize { 
     | 
|
| 
       659 
699 
     | 
    
         
             
              uintptr_t len;
         
     | 
| 
       660 
700 
     | 
    
         
             
            } ddog_prof_Slice_Usize;
         
     | 
| 
       661 
701 
     | 
    
         | 
| 
       662 
     | 
    
         
            -
             
     | 
| 
       663 
     | 
    
         
            -
             
     | 
| 
       664 
     | 
    
         
            -
             
     | 
| 
       665 
     | 
    
         
            -
             
     | 
| 
       666 
     | 
    
         
            -
             
     | 
| 
       667 
     | 
    
         
            -
             
     | 
| 
      
 702 
     | 
    
         
            +
            /**
         
     | 
| 
      
 703 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 704 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 705 
     | 
    
         
            +
             */
         
     | 
| 
      
 706 
     | 
    
         
            +
            typedef enum ddog_prof_Result_ByteSlice_Tag {
         
     | 
| 
      
 707 
     | 
    
         
            +
              DDOG_PROF_RESULT_BYTE_SLICE_OK_BYTE_SLICE,
         
     | 
| 
      
 708 
     | 
    
         
            +
              DDOG_PROF_RESULT_BYTE_SLICE_ERR_BYTE_SLICE,
         
     | 
| 
      
 709 
     | 
    
         
            +
            } ddog_prof_Result_ByteSlice_Tag;
         
     | 
| 
      
 710 
     | 
    
         
            +
             
     | 
| 
      
 711 
     | 
    
         
            +
            typedef struct ddog_prof_Result_ByteSlice {
         
     | 
| 
      
 712 
     | 
    
         
            +
              ddog_prof_Result_ByteSlice_Tag tag;
         
     | 
| 
      
 713 
     | 
    
         
            +
              union {
         
     | 
| 
      
 714 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 715 
     | 
    
         
            +
                  ddog_ByteSlice ok;
         
     | 
| 
      
 716 
     | 
    
         
            +
                };
         
     | 
| 
      
 717 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 718 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 719 
     | 
    
         
            +
                };
         
     | 
| 
      
 720 
     | 
    
         
            +
              };
         
     | 
| 
      
 721 
     | 
    
         
            +
            } ddog_prof_Result_ByteSlice;
         
     | 
| 
       668 
722 
     | 
    
         | 
| 
       669 
723 
     | 
    
         
             
            typedef enum ddog_prof_Profile_SerializeResult_Tag {
         
     | 
| 
       670 
724 
     | 
    
         
             
              DDOG_PROF_PROFILE_SERIALIZE_RESULT_OK,
         
     | 
| 
         @@ -683,53 +737,205 @@ typedef struct ddog_prof_Profile_SerializeResult { 
     | 
|
| 
       683 
737 
     | 
    
         
             
              };
         
     | 
| 
       684 
738 
     | 
    
         
             
            } ddog_prof_Profile_SerializeResult;
         
     | 
| 
       685 
739 
     | 
    
         | 
| 
       686 
     | 
    
         
            -
             
     | 
| 
       687 
     | 
    
         
            -
             
     | 
| 
       688 
     | 
    
         
            -
             
     | 
| 
       689 
     | 
    
         
            -
             
     | 
| 
      
 740 
     | 
    
         
            +
            /**
         
     | 
| 
      
 741 
     | 
    
         
            +
             * Represents time since the Unix Epoch in seconds plus nanoseconds.
         
     | 
| 
      
 742 
     | 
    
         
            +
             */
         
     | 
| 
      
 743 
     | 
    
         
            +
            typedef struct ddog_Timespec {
         
     | 
| 
      
 744 
     | 
    
         
            +
              int64_t seconds;
         
     | 
| 
      
 745 
     | 
    
         
            +
              uint32_t nanoseconds;
         
     | 
| 
      
 746 
     | 
    
         
            +
            } ddog_Timespec;
         
     | 
| 
       690 
747 
     | 
    
         | 
| 
       691 
     | 
    
         
            -
             
     | 
| 
       692 
     | 
    
         
            -
             
     | 
| 
      
 748 
     | 
    
         
            +
            /**
         
     | 
| 
      
 749 
     | 
    
         
            +
             * Opaque identifier for the profiler generation
         
     | 
| 
      
 750 
     | 
    
         
            +
             */
         
     | 
| 
      
 751 
     | 
    
         
            +
            typedef struct ddog_prof_Generation {
         
     | 
| 
      
 752 
     | 
    
         
            +
              uint64_t id;
         
     | 
| 
      
 753 
     | 
    
         
            +
            } ddog_prof_Generation;
         
     | 
| 
      
 754 
     | 
    
         
            +
             
     | 
| 
      
 755 
     | 
    
         
            +
            typedef struct OpaqueFunctionId {
         
     | 
| 
      
 756 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 757 
     | 
    
         
            +
            } OpaqueFunctionId;
         
     | 
| 
      
 758 
     | 
    
         
            +
             
     | 
| 
      
 759 
     | 
    
         
            +
            typedef struct ddog_prof_FunctionId {
         
     | 
| 
      
 760 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 761 
     | 
    
         
            +
              struct OpaqueFunctionId id;
         
     | 
| 
      
 762 
     | 
    
         
            +
            } ddog_prof_FunctionId;
         
     | 
| 
      
 763 
     | 
    
         
            +
             
     | 
| 
      
 764 
     | 
    
         
            +
            /**
         
     | 
| 
      
 765 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 766 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 767 
     | 
    
         
            +
             */
         
     | 
| 
      
 768 
     | 
    
         
            +
            typedef enum ddog_prof_FunctionId_Result_Tag {
         
     | 
| 
      
 769 
     | 
    
         
            +
              DDOG_PROF_FUNCTION_ID_RESULT_OK_GENERATIONAL_ID_FUNCTION_ID,
         
     | 
| 
      
 770 
     | 
    
         
            +
              DDOG_PROF_FUNCTION_ID_RESULT_ERR_GENERATIONAL_ID_FUNCTION_ID,
         
     | 
| 
      
 771 
     | 
    
         
            +
            } ddog_prof_FunctionId_Result_Tag;
         
     | 
| 
      
 772 
     | 
    
         
            +
             
     | 
| 
      
 773 
     | 
    
         
            +
            typedef struct ddog_prof_FunctionId_Result {
         
     | 
| 
      
 774 
     | 
    
         
            +
              ddog_prof_FunctionId_Result_Tag tag;
         
     | 
| 
       693 
775 
     | 
    
         
             
              union {
         
     | 
| 
       694 
776 
     | 
    
         
             
                struct {
         
     | 
| 
       695 
     | 
    
         
            -
                  struct  
     | 
| 
      
 777 
     | 
    
         
            +
                  struct ddog_prof_FunctionId ok;
         
     | 
| 
       696 
778 
     | 
    
         
             
                };
         
     | 
| 
       697 
779 
     | 
    
         
             
                struct {
         
     | 
| 
       698 
780 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       699 
781 
     | 
    
         
             
                };
         
     | 
| 
       700 
782 
     | 
    
         
             
              };
         
     | 
| 
       701 
     | 
    
         
            -
            }  
     | 
| 
      
 783 
     | 
    
         
            +
            } ddog_prof_FunctionId_Result;
         
     | 
| 
       702 
784 
     | 
    
         | 
| 
       703 
     | 
    
         
            -
             
     | 
| 
       704 
     | 
    
         
            -
             
     | 
| 
       705 
     | 
    
         
            -
             
     | 
| 
       706 
     | 
    
         
            -
             
     | 
| 
      
 785 
     | 
    
         
            +
            /**
         
     | 
| 
      
 786 
     | 
    
         
            +
             * Represents an offset into the Profile's string table. Note that it cannot
         
     | 
| 
      
 787 
     | 
    
         
            +
             * exceed u32 because an entire protobuf message must not be larger than or
         
     | 
| 
      
 788 
     | 
    
         
            +
             * equal to 2 GiB. By the time you encode the tag and length prefix for each
         
     | 
| 
      
 789 
     | 
    
         
            +
             * string, there's no way to get this many unique-ish strings without first
         
     | 
| 
      
 790 
     | 
    
         
            +
             * exceeding the protobuf 2 GiB limit.
         
     | 
| 
      
 791 
     | 
    
         
            +
             *
         
     | 
| 
      
 792 
     | 
    
         
            +
             * A value of 0 means "no string" or "empty string" (they are synonymous).
         
     | 
| 
      
 793 
     | 
    
         
            +
             */
         
     | 
| 
      
 794 
     | 
    
         
            +
            typedef struct OpaqueStringId {
         
     | 
| 
      
 795 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 796 
     | 
    
         
            +
            } OpaqueStringId;
         
     | 
| 
      
 797 
     | 
    
         
            +
            #define OpaqueStringId_ZERO (OpaqueStringId){ ._0 = 0 }
         
     | 
| 
       707 
798 
     | 
    
         | 
| 
       708 
     | 
    
         
            -
            typedef struct  
     | 
| 
       709 
     | 
    
         
            -
             
     | 
| 
      
 799 
     | 
    
         
            +
            typedef struct OpaqueStringId OpaqueStringId;
         
     | 
| 
      
 800 
     | 
    
         
            +
             
     | 
| 
      
 801 
     | 
    
         
            +
            typedef struct ddog_prof_StringId {
         
     | 
| 
      
 802 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 803 
     | 
    
         
            +
              OpaqueStringId id;
         
     | 
| 
      
 804 
     | 
    
         
            +
            } ddog_prof_StringId;
         
     | 
| 
      
 805 
     | 
    
         
            +
             
     | 
| 
      
 806 
     | 
    
         
            +
            typedef struct OpaqueLabelId {
         
     | 
| 
      
 807 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 808 
     | 
    
         
            +
            } OpaqueLabelId;
         
     | 
| 
      
 809 
     | 
    
         
            +
             
     | 
| 
      
 810 
     | 
    
         
            +
            typedef struct ddog_prof_LabelId {
         
     | 
| 
      
 811 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 812 
     | 
    
         
            +
              struct OpaqueLabelId id;
         
     | 
| 
      
 813 
     | 
    
         
            +
            } ddog_prof_LabelId;
         
     | 
| 
      
 814 
     | 
    
         
            +
             
     | 
| 
      
 815 
     | 
    
         
            +
            /**
         
     | 
| 
      
 816 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 817 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 818 
     | 
    
         
            +
             */
         
     | 
| 
      
 819 
     | 
    
         
            +
            typedef enum ddog_prof_LabelId_Result_Tag {
         
     | 
| 
      
 820 
     | 
    
         
            +
              DDOG_PROF_LABEL_ID_RESULT_OK_GENERATIONAL_ID_LABEL_ID,
         
     | 
| 
      
 821 
     | 
    
         
            +
              DDOG_PROF_LABEL_ID_RESULT_ERR_GENERATIONAL_ID_LABEL_ID,
         
     | 
| 
      
 822 
     | 
    
         
            +
            } ddog_prof_LabelId_Result_Tag;
         
     | 
| 
      
 823 
     | 
    
         
            +
             
     | 
| 
      
 824 
     | 
    
         
            +
            typedef struct ddog_prof_LabelId_Result {
         
     | 
| 
      
 825 
     | 
    
         
            +
              ddog_prof_LabelId_Result_Tag tag;
         
     | 
| 
       710 
826 
     | 
    
         
             
              union {
         
     | 
| 
       711 
827 
     | 
    
         
             
                struct {
         
     | 
| 
       712 
     | 
    
         
            -
                  struct  
     | 
| 
      
 828 
     | 
    
         
            +
                  struct ddog_prof_LabelId ok;
         
     | 
| 
       713 
829 
     | 
    
         
             
                };
         
     | 
| 
       714 
830 
     | 
    
         
             
                struct {
         
     | 
| 
       715 
831 
     | 
    
         
             
                  struct ddog_Error err;
         
     | 
| 
       716 
832 
     | 
    
         
             
                };
         
     | 
| 
       717 
833 
     | 
    
         
             
              };
         
     | 
| 
       718 
     | 
    
         
            -
            }  
     | 
| 
      
 834 
     | 
    
         
            +
            } ddog_prof_LabelId_Result;
         
     | 
| 
       719 
835 
     | 
    
         | 
| 
       720 
     | 
    
         
            -
            typedef struct  
     | 
| 
      
 836 
     | 
    
         
            +
            typedef struct OpaqueLabelSetId {
         
     | 
| 
      
 837 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 838 
     | 
    
         
            +
            } OpaqueLabelSetId;
         
     | 
| 
      
 839 
     | 
    
         
            +
             
     | 
| 
      
 840 
     | 
    
         
            +
            typedef struct ddog_prof_LabelSetId {
         
     | 
| 
      
 841 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 842 
     | 
    
         
            +
              struct OpaqueLabelSetId id;
         
     | 
| 
      
 843 
     | 
    
         
            +
            } ddog_prof_LabelSetId;
         
     | 
| 
      
 844 
     | 
    
         
            +
             
     | 
| 
      
 845 
     | 
    
         
            +
            /**
         
     | 
| 
      
 846 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 847 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 848 
     | 
    
         
            +
             */
         
     | 
| 
      
 849 
     | 
    
         
            +
            typedef enum ddog_prof_LabelSetId_Result_Tag {
         
     | 
| 
      
 850 
     | 
    
         
            +
              DDOG_PROF_LABEL_SET_ID_RESULT_OK_GENERATIONAL_ID_LABEL_SET_ID,
         
     | 
| 
      
 851 
     | 
    
         
            +
              DDOG_PROF_LABEL_SET_ID_RESULT_ERR_GENERATIONAL_ID_LABEL_SET_ID,
         
     | 
| 
      
 852 
     | 
    
         
            +
            } ddog_prof_LabelSetId_Result_Tag;
         
     | 
| 
      
 853 
     | 
    
         
            +
             
     | 
| 
      
 854 
     | 
    
         
            +
            typedef struct ddog_prof_LabelSetId_Result {
         
     | 
| 
      
 855 
     | 
    
         
            +
              ddog_prof_LabelSetId_Result_Tag tag;
         
     | 
| 
      
 856 
     | 
    
         
            +
              union {
         
     | 
| 
      
 857 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 858 
     | 
    
         
            +
                  struct ddog_prof_LabelSetId ok;
         
     | 
| 
      
 859 
     | 
    
         
            +
                };
         
     | 
| 
      
 860 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 861 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 862 
     | 
    
         
            +
                };
         
     | 
| 
      
 863 
     | 
    
         
            +
              };
         
     | 
| 
      
 864 
     | 
    
         
            +
            } ddog_prof_LabelSetId_Result;
         
     | 
| 
      
 865 
     | 
    
         
            +
             
     | 
| 
      
 866 
     | 
    
         
            +
            typedef struct ddog_prof_Slice_LabelId {
         
     | 
| 
       721 
867 
     | 
    
         
             
              /**
         
     | 
| 
       722 
868 
     | 
    
         
             
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
       723 
869 
     | 
    
         
             
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
       724 
870 
     | 
    
         
             
               * zero.
         
     | 
| 
       725 
871 
     | 
    
         
             
               */
         
     | 
| 
       726 
     | 
    
         
            -
              const  
     | 
| 
      
 872 
     | 
    
         
            +
              const struct ddog_prof_LabelId *ptr;
         
     | 
| 
       727 
873 
     | 
    
         
             
              /**
         
     | 
| 
       728 
874 
     | 
    
         
             
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
       729 
875 
     | 
    
         
             
               * than or equal to [isize::MAX].
         
     | 
| 
       730 
876 
     | 
    
         
             
               */
         
     | 
| 
       731 
877 
     | 
    
         
             
              uintptr_t len;
         
     | 
| 
       732 
     | 
    
         
            -
            }  
     | 
| 
      
 878 
     | 
    
         
            +
            } ddog_prof_Slice_LabelId;
         
     | 
| 
      
 879 
     | 
    
         
            +
             
     | 
| 
      
 880 
     | 
    
         
            +
            typedef struct OpaqueLocationId {
         
     | 
| 
      
 881 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 882 
     | 
    
         
            +
            } OpaqueLocationId;
         
     | 
| 
      
 883 
     | 
    
         
            +
             
     | 
| 
      
 884 
     | 
    
         
            +
            typedef struct ddog_prof_LocationId {
         
     | 
| 
      
 885 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 886 
     | 
    
         
            +
              struct OpaqueLocationId id;
         
     | 
| 
      
 887 
     | 
    
         
            +
            } ddog_prof_LocationId;
         
     | 
| 
      
 888 
     | 
    
         
            +
             
     | 
| 
      
 889 
     | 
    
         
            +
            /**
         
     | 
| 
      
 890 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 891 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 892 
     | 
    
         
            +
             */
         
     | 
| 
      
 893 
     | 
    
         
            +
            typedef enum ddog_prof_LocationId_Result_Tag {
         
     | 
| 
      
 894 
     | 
    
         
            +
              DDOG_PROF_LOCATION_ID_RESULT_OK_GENERATIONAL_ID_LOCATION_ID,
         
     | 
| 
      
 895 
     | 
    
         
            +
              DDOG_PROF_LOCATION_ID_RESULT_ERR_GENERATIONAL_ID_LOCATION_ID,
         
     | 
| 
      
 896 
     | 
    
         
            +
            } ddog_prof_LocationId_Result_Tag;
         
     | 
| 
      
 897 
     | 
    
         
            +
             
     | 
| 
      
 898 
     | 
    
         
            +
            typedef struct ddog_prof_LocationId_Result {
         
     | 
| 
      
 899 
     | 
    
         
            +
              ddog_prof_LocationId_Result_Tag tag;
         
     | 
| 
      
 900 
     | 
    
         
            +
              union {
         
     | 
| 
      
 901 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 902 
     | 
    
         
            +
                  struct ddog_prof_LocationId ok;
         
     | 
| 
      
 903 
     | 
    
         
            +
                };
         
     | 
| 
      
 904 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 905 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 906 
     | 
    
         
            +
                };
         
     | 
| 
      
 907 
     | 
    
         
            +
              };
         
     | 
| 
      
 908 
     | 
    
         
            +
            } ddog_prof_LocationId_Result;
         
     | 
| 
      
 909 
     | 
    
         
            +
             
     | 
| 
      
 910 
     | 
    
         
            +
            typedef struct OpaqueMappingId {
         
     | 
| 
      
 911 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 912 
     | 
    
         
            +
            } OpaqueMappingId;
         
     | 
| 
      
 913 
     | 
    
         
            +
             
     | 
| 
      
 914 
     | 
    
         
            +
            typedef struct ddog_prof_MappingId {
         
     | 
| 
      
 915 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 916 
     | 
    
         
            +
              struct OpaqueMappingId id;
         
     | 
| 
      
 917 
     | 
    
         
            +
            } ddog_prof_MappingId;
         
     | 
| 
      
 918 
     | 
    
         
            +
             
     | 
| 
      
 919 
     | 
    
         
            +
            /**
         
     | 
| 
      
 920 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 921 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 922 
     | 
    
         
            +
             */
         
     | 
| 
      
 923 
     | 
    
         
            +
            typedef enum ddog_prof_StringId_Result_Tag {
         
     | 
| 
      
 924 
     | 
    
         
            +
              DDOG_PROF_STRING_ID_RESULT_OK_GENERATIONAL_ID_STRING_ID,
         
     | 
| 
      
 925 
     | 
    
         
            +
              DDOG_PROF_STRING_ID_RESULT_ERR_GENERATIONAL_ID_STRING_ID,
         
     | 
| 
      
 926 
     | 
    
         
            +
            } ddog_prof_StringId_Result_Tag;
         
     | 
| 
      
 927 
     | 
    
         
            +
             
     | 
| 
      
 928 
     | 
    
         
            +
            typedef struct ddog_prof_StringId_Result {
         
     | 
| 
      
 929 
     | 
    
         
            +
              ddog_prof_StringId_Result_Tag tag;
         
     | 
| 
      
 930 
     | 
    
         
            +
              union {
         
     | 
| 
      
 931 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 932 
     | 
    
         
            +
                  struct ddog_prof_StringId ok;
         
     | 
| 
      
 933 
     | 
    
         
            +
                };
         
     | 
| 
      
 934 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 935 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 936 
     | 
    
         
            +
                };
         
     | 
| 
      
 937 
     | 
    
         
            +
              };
         
     | 
| 
      
 938 
     | 
    
         
            +
            } ddog_prof_StringId_Result;
         
     | 
| 
       733 
939 
     | 
    
         | 
| 
       734 
940 
     | 
    
         
             
            typedef struct ddog_prof_Slice_ManagedStringId {
         
     | 
| 
       735 
941 
     | 
    
         
             
              /**
         
     | 
| 
         @@ -745,6 +951,170 @@ typedef struct ddog_prof_Slice_ManagedStringId { 
     | 
|
| 
       745 
951 
     | 
    
         
             
              uintptr_t len;
         
     | 
| 
       746 
952 
     | 
    
         
             
            } ddog_prof_Slice_ManagedStringId;
         
     | 
| 
       747 
953 
     | 
    
         | 
| 
      
 954 
     | 
    
         
            +
            typedef struct ddog_prof_MutSlice_GenerationalIdStringId {
         
     | 
| 
      
 955 
     | 
    
         
            +
              /**
         
     | 
| 
      
 956 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 957 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 958 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 959 
     | 
    
         
            +
               */
         
     | 
| 
      
 960 
     | 
    
         
            +
              struct ddog_prof_StringId *ptr;
         
     | 
| 
      
 961 
     | 
    
         
            +
              /**
         
     | 
| 
      
 962 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 963 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 964 
     | 
    
         
            +
               */
         
     | 
| 
      
 965 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 966 
     | 
    
         
            +
            } ddog_prof_MutSlice_GenerationalIdStringId;
         
     | 
| 
      
 967 
     | 
    
         
            +
             
     | 
| 
      
 968 
     | 
    
         
            +
            /**
         
     | 
| 
      
 969 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 970 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 971 
     | 
    
         
            +
             */
         
     | 
| 
      
 972 
     | 
    
         
            +
            typedef enum ddog_prof_MappingId_Result_Tag {
         
     | 
| 
      
 973 
     | 
    
         
            +
              DDOG_PROF_MAPPING_ID_RESULT_OK_GENERATIONAL_ID_MAPPING_ID,
         
     | 
| 
      
 974 
     | 
    
         
            +
              DDOG_PROF_MAPPING_ID_RESULT_ERR_GENERATIONAL_ID_MAPPING_ID,
         
     | 
| 
      
 975 
     | 
    
         
            +
            } ddog_prof_MappingId_Result_Tag;
         
     | 
| 
      
 976 
     | 
    
         
            +
             
     | 
| 
      
 977 
     | 
    
         
            +
            typedef struct ddog_prof_MappingId_Result {
         
     | 
| 
      
 978 
     | 
    
         
            +
              ddog_prof_MappingId_Result_Tag tag;
         
     | 
| 
      
 979 
     | 
    
         
            +
              union {
         
     | 
| 
      
 980 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 981 
     | 
    
         
            +
                  struct ddog_prof_MappingId ok;
         
     | 
| 
      
 982 
     | 
    
         
            +
                };
         
     | 
| 
      
 983 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 984 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 985 
     | 
    
         
            +
                };
         
     | 
| 
      
 986 
     | 
    
         
            +
              };
         
     | 
| 
      
 987 
     | 
    
         
            +
            } ddog_prof_MappingId_Result;
         
     | 
| 
      
 988 
     | 
    
         
            +
             
     | 
| 
      
 989 
     | 
    
         
            +
            typedef struct OpaqueStackTraceId {
         
     | 
| 
      
 990 
     | 
    
         
            +
              uint32_t _0;
         
     | 
| 
      
 991 
     | 
    
         
            +
            } OpaqueStackTraceId;
         
     | 
| 
      
 992 
     | 
    
         
            +
             
     | 
| 
      
 993 
     | 
    
         
            +
            typedef struct ddog_prof_StackTraceId {
         
     | 
| 
      
 994 
     | 
    
         
            +
              struct ddog_prof_Generation generation;
         
     | 
| 
      
 995 
     | 
    
         
            +
              struct OpaqueStackTraceId id;
         
     | 
| 
      
 996 
     | 
    
         
            +
            } ddog_prof_StackTraceId;
         
     | 
| 
      
 997 
     | 
    
         
            +
             
     | 
| 
      
 998 
     | 
    
         
            +
            /**
         
     | 
| 
      
 999 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 1000 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 1001 
     | 
    
         
            +
             */
         
     | 
| 
      
 1002 
     | 
    
         
            +
            typedef enum ddog_prof_StackTraceId_Result_Tag {
         
     | 
| 
      
 1003 
     | 
    
         
            +
              DDOG_PROF_STACK_TRACE_ID_RESULT_OK_GENERATIONAL_ID_STACK_TRACE_ID,
         
     | 
| 
      
 1004 
     | 
    
         
            +
              DDOG_PROF_STACK_TRACE_ID_RESULT_ERR_GENERATIONAL_ID_STACK_TRACE_ID,
         
     | 
| 
      
 1005 
     | 
    
         
            +
            } ddog_prof_StackTraceId_Result_Tag;
         
     | 
| 
      
 1006 
     | 
    
         
            +
             
     | 
| 
      
 1007 
     | 
    
         
            +
            typedef struct ddog_prof_StackTraceId_Result {
         
     | 
| 
      
 1008 
     | 
    
         
            +
              ddog_prof_StackTraceId_Result_Tag tag;
         
     | 
| 
      
 1009 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1010 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1011 
     | 
    
         
            +
                  struct ddog_prof_StackTraceId ok;
         
     | 
| 
      
 1012 
     | 
    
         
            +
                };
         
     | 
| 
      
 1013 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1014 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1015 
     | 
    
         
            +
                };
         
     | 
| 
      
 1016 
     | 
    
         
            +
              };
         
     | 
| 
      
 1017 
     | 
    
         
            +
            } ddog_prof_StackTraceId_Result;
         
     | 
| 
      
 1018 
     | 
    
         
            +
             
     | 
| 
      
 1019 
     | 
    
         
            +
            typedef struct ddog_prof_Slice_LocationId {
         
     | 
| 
      
 1020 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1021 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 1022 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 1023 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 1024 
     | 
    
         
            +
               */
         
     | 
| 
      
 1025 
     | 
    
         
            +
              const struct ddog_prof_LocationId *ptr;
         
     | 
| 
      
 1026 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1027 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 1028 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 1029 
     | 
    
         
            +
               */
         
     | 
| 
      
 1030 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1031 
     | 
    
         
            +
            } ddog_prof_Slice_LocationId;
         
     | 
| 
      
 1032 
     | 
    
         
            +
             
     | 
| 
      
 1033 
     | 
    
         
            +
            typedef struct ddog_prof_Slice_CharSlice {
         
     | 
| 
      
 1034 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1035 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 1036 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 1037 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 1038 
     | 
    
         
            +
               */
         
     | 
| 
      
 1039 
     | 
    
         
            +
              const ddog_CharSlice *ptr;
         
     | 
| 
      
 1040 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1041 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 1042 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 1043 
     | 
    
         
            +
               */
         
     | 
| 
      
 1044 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1045 
     | 
    
         
            +
            } ddog_prof_Slice_CharSlice;
         
     | 
| 
      
 1046 
     | 
    
         
            +
             
     | 
| 
      
 1047 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1048 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 1049 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 1050 
     | 
    
         
            +
             */
         
     | 
| 
      
 1051 
     | 
    
         
            +
            typedef enum ddog_prof_Result_Generation_Tag {
         
     | 
| 
      
 1052 
     | 
    
         
            +
              DDOG_PROF_RESULT_GENERATION_OK_GENERATION,
         
     | 
| 
      
 1053 
     | 
    
         
            +
              DDOG_PROF_RESULT_GENERATION_ERR_GENERATION,
         
     | 
| 
      
 1054 
     | 
    
         
            +
            } ddog_prof_Result_Generation_Tag;
         
     | 
| 
      
 1055 
     | 
    
         
            +
             
     | 
| 
      
 1056 
     | 
    
         
            +
            typedef struct ddog_prof_Result_Generation {
         
     | 
| 
      
 1057 
     | 
    
         
            +
              ddog_prof_Result_Generation_Tag tag;
         
     | 
| 
      
 1058 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1059 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1060 
     | 
    
         
            +
                  struct ddog_prof_Generation ok;
         
     | 
| 
      
 1061 
     | 
    
         
            +
                };
         
     | 
| 
      
 1062 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1063 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1064 
     | 
    
         
            +
                };
         
     | 
| 
      
 1065 
     | 
    
         
            +
              };
         
     | 
| 
      
 1066 
     | 
    
         
            +
            } ddog_prof_Result_Generation;
         
     | 
| 
      
 1067 
     | 
    
         
            +
             
     | 
| 
      
 1068 
     | 
    
         
            +
            typedef enum ddog_prof_ManagedStringStorageNewResult_Tag {
         
     | 
| 
      
 1069 
     | 
    
         
            +
              DDOG_PROF_MANAGED_STRING_STORAGE_NEW_RESULT_OK,
         
     | 
| 
      
 1070 
     | 
    
         
            +
              DDOG_PROF_MANAGED_STRING_STORAGE_NEW_RESULT_ERR,
         
     | 
| 
      
 1071 
     | 
    
         
            +
            } ddog_prof_ManagedStringStorageNewResult_Tag;
         
     | 
| 
      
 1072 
     | 
    
         
            +
             
     | 
| 
      
 1073 
     | 
    
         
            +
            typedef struct ddog_prof_ManagedStringStorageNewResult {
         
     | 
| 
      
 1074 
     | 
    
         
            +
              ddog_prof_ManagedStringStorageNewResult_Tag tag;
         
     | 
| 
      
 1075 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1076 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1077 
     | 
    
         
            +
                  struct ddog_prof_ManagedStringStorage ok;
         
     | 
| 
      
 1078 
     | 
    
         
            +
                };
         
     | 
| 
      
 1079 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1080 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1081 
     | 
    
         
            +
                };
         
     | 
| 
      
 1082 
     | 
    
         
            +
              };
         
     | 
| 
      
 1083 
     | 
    
         
            +
            } ddog_prof_ManagedStringStorageNewResult;
         
     | 
| 
      
 1084 
     | 
    
         
            +
             
     | 
| 
      
 1085 
     | 
    
         
            +
            typedef enum ddog_prof_ManagedStringStorageInternResult_Tag {
         
     | 
| 
      
 1086 
     | 
    
         
            +
              DDOG_PROF_MANAGED_STRING_STORAGE_INTERN_RESULT_OK,
         
     | 
| 
      
 1087 
     | 
    
         
            +
              DDOG_PROF_MANAGED_STRING_STORAGE_INTERN_RESULT_ERR,
         
     | 
| 
      
 1088 
     | 
    
         
            +
            } ddog_prof_ManagedStringStorageInternResult_Tag;
         
     | 
| 
      
 1089 
     | 
    
         
            +
             
     | 
| 
      
 1090 
     | 
    
         
            +
            typedef struct ddog_prof_ManagedStringStorageInternResult {
         
     | 
| 
      
 1091 
     | 
    
         
            +
              ddog_prof_ManagedStringStorageInternResult_Tag tag;
         
     | 
| 
      
 1092 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1093 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1094 
     | 
    
         
            +
                  struct ddog_prof_ManagedStringId ok;
         
     | 
| 
      
 1095 
     | 
    
         
            +
                };
         
     | 
| 
      
 1096 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1097 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1098 
     | 
    
         
            +
                };
         
     | 
| 
      
 1099 
     | 
    
         
            +
              };
         
     | 
| 
      
 1100 
     | 
    
         
            +
            } ddog_prof_ManagedStringStorageInternResult;
         
     | 
| 
      
 1101 
     | 
    
         
            +
             
     | 
| 
      
 1102 
     | 
    
         
            +
            typedef enum ddog_prof_Option_Error_Tag {
         
     | 
| 
      
 1103 
     | 
    
         
            +
              DDOG_PROF_OPTION_ERROR_SOME_ERROR,
         
     | 
| 
      
 1104 
     | 
    
         
            +
              DDOG_PROF_OPTION_ERROR_NONE_ERROR,
         
     | 
| 
      
 1105 
     | 
    
         
            +
            } ddog_prof_Option_Error_Tag;
         
     | 
| 
      
 1106 
     | 
    
         
            +
             
     | 
| 
      
 1107 
     | 
    
         
            +
            typedef struct ddog_prof_Option_Error {
         
     | 
| 
      
 1108 
     | 
    
         
            +
              ddog_prof_Option_Error_Tag tag;
         
     | 
| 
      
 1109 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1110 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1111 
     | 
    
         
            +
                  struct ddog_Error some;
         
     | 
| 
      
 1112 
     | 
    
         
            +
                };
         
     | 
| 
      
 1113 
     | 
    
         
            +
              };
         
     | 
| 
      
 1114 
     | 
    
         
            +
            } ddog_prof_Option_Error;
         
     | 
| 
      
 1115 
     | 
    
         
            +
             
     | 
| 
      
 1116 
     | 
    
         
            +
            typedef struct ddog_prof_Option_Error ddog_prof_MaybeError;
         
     | 
| 
      
 1117 
     | 
    
         
            +
             
     | 
| 
       748 
1118 
     | 
    
         
             
            typedef enum ddog_StringWrapperResult_Tag {
         
     | 
| 
       749 
1119 
     | 
    
         
             
              DDOG_STRING_WRAPPER_RESULT_OK,
         
     | 
| 
       750 
1120 
     | 
    
         
             
              DDOG_STRING_WRAPPER_RESULT_ERR,
         
     | 
| 
         @@ -762,12 +1132,16 @@ typedef struct ddog_StringWrapperResult { 
     | 
|
| 
       762 
1132 
     | 
    
         
             
              };
         
     | 
| 
       763 
1133 
     | 
    
         
             
            } ddog_StringWrapperResult;
         
     | 
| 
       764 
1134 
     | 
    
         | 
| 
      
 1135 
     | 
    
         
            +
            typedef struct ddog_prof_StringId ddog_prof_StringId;
         
     | 
| 
      
 1136 
     | 
    
         
            +
             
     | 
| 
       765 
1137 
     | 
    
         
             
            typedef enum ddog_ConfigurationOrigin {
         
     | 
| 
       766 
1138 
     | 
    
         
             
              DDOG_CONFIGURATION_ORIGIN_ENV_VAR,
         
     | 
| 
       767 
1139 
     | 
    
         
             
              DDOG_CONFIGURATION_ORIGIN_CODE,
         
     | 
| 
       768 
1140 
     | 
    
         
             
              DDOG_CONFIGURATION_ORIGIN_DD_CONFIG,
         
     | 
| 
       769 
1141 
     | 
    
         
             
              DDOG_CONFIGURATION_ORIGIN_REMOTE_CONFIG,
         
     | 
| 
       770 
1142 
     | 
    
         
             
              DDOG_CONFIGURATION_ORIGIN_DEFAULT,
         
     | 
| 
      
 1143 
     | 
    
         
            +
              DDOG_CONFIGURATION_ORIGIN_LOCAL_STABLE_CONFIG,
         
     | 
| 
      
 1144 
     | 
    
         
            +
              DDOG_CONFIGURATION_ORIGIN_FLEET_STABLE_CONFIG,
         
     | 
| 
       771 
1145 
     | 
    
         
             
            } ddog_ConfigurationOrigin;
         
     | 
| 
       772 
1146 
     | 
    
         | 
| 
       773 
1147 
     | 
    
         
             
            typedef enum ddog_LogLevel {
         
     | 
| 
         @@ -899,6 +1273,7 @@ typedef enum ddog_crasht_OpTypes { 
     | 
|
| 
       899 
1273 
     | 
    
         | 
| 
       900 
1274 
     | 
    
         
             
            /**
         
     | 
| 
       901 
1275 
     | 
    
         
             
             * See https://man7.org/linux/man-pages/man2/sigaction.2.html
         
     | 
| 
      
 1276 
     | 
    
         
            +
             * MUST REMAIN IN SYNC WITH THE ENUM IN emit_sigcodes.c
         
     | 
| 
       902 
1277 
     | 
    
         
             
             */
         
     | 
| 
       903 
1278 
     | 
    
         
             
            typedef enum ddog_crasht_SiCodes {
         
     | 
| 
       904 
1279 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_BUS_ADRALN,
         
     | 
| 
         @@ -906,6 +1281,14 @@ typedef enum ddog_crasht_SiCodes { 
     | 
|
| 
       906 
1281 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_BUS_MCEERR_AO,
         
     | 
| 
       907 
1282 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_BUS_MCEERR_AR,
         
     | 
| 
       908 
1283 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_BUS_OBJERR,
         
     | 
| 
      
 1284 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_BADSTK,
         
     | 
| 
      
 1285 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_COPROC,
         
     | 
| 
      
 1286 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_ILLADR,
         
     | 
| 
      
 1287 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_ILLOPC,
         
     | 
| 
      
 1288 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_ILLOPN,
         
     | 
| 
      
 1289 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_ILLTRP,
         
     | 
| 
      
 1290 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_PRVOPC,
         
     | 
| 
      
 1291 
     | 
    
         
            +
              DDOG_CRASHT_SI_CODES_ILL_PRVREG,
         
     | 
| 
       909 
1292 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_SEGV_ACCERR,
         
     | 
| 
       910 
1293 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_SEGV_BNDERR,
         
     | 
| 
       911 
1294 
     | 
    
         
             
              DDOG_CRASHT_SI_CODES_SEGV_MAPERR,
         
     | 
| 
         @@ -926,10 +1309,37 @@ typedef enum ddog_crasht_SiCodes { 
     | 
|
| 
       926 
1309 
     | 
    
         
             
             * See https://man7.org/linux/man-pages/man7/signal.7.html
         
     | 
| 
       927 
1310 
     | 
    
         
             
             */
         
     | 
| 
       928 
1311 
     | 
    
         
             
            typedef enum ddog_crasht_SignalNames {
         
     | 
| 
      
 1312 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGHUP,
         
     | 
| 
      
 1313 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGINT,
         
     | 
| 
      
 1314 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGQUIT,
         
     | 
| 
      
 1315 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGILL,
         
     | 
| 
      
 1316 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGTRAP,
         
     | 
| 
       929 
1317 
     | 
    
         
             
              DDOG_CRASHT_SIGNAL_NAMES_SIGABRT,
         
     | 
| 
       930 
1318 
     | 
    
         
             
              DDOG_CRASHT_SIGNAL_NAMES_SIGBUS,
         
     | 
| 
      
 1319 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGFPE,
         
     | 
| 
      
 1320 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGKILL,
         
     | 
| 
      
 1321 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGUSR1,
         
     | 
| 
       931 
1322 
     | 
    
         
             
              DDOG_CRASHT_SIGNAL_NAMES_SIGSEGV,
         
     | 
| 
      
 1323 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGUSR2,
         
     | 
| 
      
 1324 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGPIPE,
         
     | 
| 
      
 1325 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGALRM,
         
     | 
| 
      
 1326 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGTERM,
         
     | 
| 
      
 1327 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGCHLD,
         
     | 
| 
      
 1328 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGCONT,
         
     | 
| 
      
 1329 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGSTOP,
         
     | 
| 
      
 1330 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGTSTP,
         
     | 
| 
      
 1331 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGTTIN,
         
     | 
| 
      
 1332 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGTTOU,
         
     | 
| 
      
 1333 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGURG,
         
     | 
| 
      
 1334 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGXCPU,
         
     | 
| 
      
 1335 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGXFSZ,
         
     | 
| 
      
 1336 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGVTALRM,
         
     | 
| 
      
 1337 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGPROF,
         
     | 
| 
      
 1338 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGWINCH,
         
     | 
| 
      
 1339 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGIO,
         
     | 
| 
       932 
1340 
     | 
    
         
             
              DDOG_CRASHT_SIGNAL_NAMES_SIGSYS,
         
     | 
| 
      
 1341 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGEMT,
         
     | 
| 
      
 1342 
     | 
    
         
            +
              DDOG_CRASHT_SIGNAL_NAMES_SIGINFO,
         
     | 
| 
       933 
1343 
     | 
    
         
             
              DDOG_CRASHT_SIGNAL_NAMES_UNKNOWN,
         
     | 
| 
       934 
1344 
     | 
    
         
             
            } ddog_crasht_SignalNames;
         
     | 
| 
       935 
1345 
     | 
    
         | 
| 
         @@ -946,6 +1356,12 @@ typedef enum ddog_crasht_StacktraceCollection { 
     | 
|
| 
       946 
1356 
     | 
    
         
             
               */
         
     | 
| 
       947 
1357 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_DISABLED,
         
     | 
| 
       948 
1358 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_WITHOUT_SYMBOLS,
         
     | 
| 
      
 1359 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1360 
     | 
    
         
            +
               * This option uses `backtrace::resolve_frame_unsynchronized()` to gather symbol information
         
     | 
| 
      
 1361 
     | 
    
         
            +
               * and also unwind inlined functions. Enabling this feature will not only provide symbolic
         
     | 
| 
      
 1362 
     | 
    
         
            +
               * details, but may also yield additional or less stack frames compared to other
         
     | 
| 
      
 1363 
     | 
    
         
            +
               * configurations.
         
     | 
| 
      
 1364 
     | 
    
         
            +
               */
         
     | 
| 
       949 
1365 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_INPROCESS_SYMBOLS,
         
     | 
| 
       950 
1366 
     | 
    
         
             
              DDOG_CRASHT_STACKTRACE_COLLECTION_ENABLED_WITH_SYMBOLS_IN_RECEIVER,
         
     | 
| 
       951 
1367 
     | 
    
         
             
            } ddog_crasht_StacktraceCollection;
         
     | 
| 
         @@ -958,31 +1374,6 @@ typedef struct ddog_crasht_StackFrame ddog_crasht_StackFrame; 
     | 
|
| 
       958 
1374 
     | 
    
         | 
| 
       959 
1375 
     | 
    
         
             
            typedef struct ddog_crasht_StackTrace ddog_crasht_StackTrace;
         
     | 
| 
       960 
1376 
     | 
    
         | 
| 
       961 
     | 
    
         
            -
            /**
         
     | 
| 
       962 
     | 
    
         
            -
             * A generic result type for when an operation may fail,
         
     | 
| 
       963 
     | 
    
         
            -
             * but there's nothing to return in the case of success.
         
     | 
| 
       964 
     | 
    
         
            -
             */
         
     | 
| 
       965 
     | 
    
         
            -
            typedef enum ddog_VoidResult_Tag {
         
     | 
| 
       966 
     | 
    
         
            -
              DDOG_VOID_RESULT_OK,
         
     | 
| 
       967 
     | 
    
         
            -
              DDOG_VOID_RESULT_ERR,
         
     | 
| 
       968 
     | 
    
         
            -
            } ddog_VoidResult_Tag;
         
     | 
| 
       969 
     | 
    
         
            -
             
     | 
| 
       970 
     | 
    
         
            -
            typedef struct ddog_VoidResult {
         
     | 
| 
       971 
     | 
    
         
            -
              ddog_VoidResult_Tag tag;
         
     | 
| 
       972 
     | 
    
         
            -
              union {
         
     | 
| 
       973 
     | 
    
         
            -
                struct {
         
     | 
| 
       974 
     | 
    
         
            -
                  /**
         
     | 
| 
       975 
     | 
    
         
            -
                   * Do not use the value of Ok. This value only exists to overcome
         
     | 
| 
       976 
     | 
    
         
            -
                   * Rust -> C code generation.
         
     | 
| 
       977 
     | 
    
         
            -
                   */
         
     | 
| 
       978 
     | 
    
         
            -
                  bool ok;
         
     | 
| 
       979 
     | 
    
         
            -
                };
         
     | 
| 
       980 
     | 
    
         
            -
                struct {
         
     | 
| 
       981 
     | 
    
         
            -
                  struct ddog_Error err;
         
     | 
| 
       982 
     | 
    
         
            -
                };
         
     | 
| 
       983 
     | 
    
         
            -
              };
         
     | 
| 
       984 
     | 
    
         
            -
            } ddog_VoidResult;
         
     | 
| 
       985 
     | 
    
         
            -
             
     | 
| 
       986 
1377 
     | 
    
         
             
            typedef struct ddog_crasht_Slice_CharSlice {
         
     | 
| 
       987 
1378 
     | 
    
         
             
              /**
         
     | 
| 
       988 
1379 
     | 
    
         
             
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
         @@ -997,26 +1388,49 @@ typedef struct ddog_crasht_Slice_CharSlice { 
     | 
|
| 
       997 
1388 
     | 
    
         
             
              uintptr_t len;
         
     | 
| 
       998 
1389 
     | 
    
         
             
            } ddog_crasht_Slice_CharSlice;
         
     | 
| 
       999 
1390 
     | 
    
         | 
| 
      
 1391 
     | 
    
         
            +
            typedef struct ddog_crasht_Slice_I32 {
         
     | 
| 
      
 1392 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1393 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 1394 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 1395 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 1396 
     | 
    
         
            +
               */
         
     | 
| 
      
 1397 
     | 
    
         
            +
              const int32_t *ptr;
         
     | 
| 
      
 1398 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1399 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 1400 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 1401 
     | 
    
         
            +
               */
         
     | 
| 
      
 1402 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1403 
     | 
    
         
            +
            } ddog_crasht_Slice_I32;
         
     | 
| 
      
 1404 
     | 
    
         
            +
             
     | 
| 
       1000 
1405 
     | 
    
         
             
            typedef struct ddog_crasht_Config {
         
     | 
| 
       1001 
1406 
     | 
    
         
             
              struct ddog_crasht_Slice_CharSlice additional_files;
         
     | 
| 
       1002 
1407 
     | 
    
         
             
              bool create_alt_stack;
         
     | 
| 
       1003 
     | 
    
         
            -
              bool  
     | 
| 
      
 1408 
     | 
    
         
            +
              bool demangle_names;
         
     | 
| 
       1004 
1409 
     | 
    
         
             
              /**
         
     | 
| 
       1005 
1410 
     | 
    
         
             
               * The endpoint to send the crash report to (can be a file://).
         
     | 
| 
       1006 
1411 
     | 
    
         
             
               * If None, the crashtracker will infer the agent host from env variables.
         
     | 
| 
       1007 
1412 
     | 
    
         
             
               */
         
     | 
| 
       1008 
1413 
     | 
    
         
             
              const struct ddog_Endpoint *endpoint;
         
     | 
| 
      
 1414 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1415 
     | 
    
         
            +
               * Optional filename for a unix domain socket if the receiver is used asynchonously
         
     | 
| 
      
 1416 
     | 
    
         
            +
               */
         
     | 
| 
      
 1417 
     | 
    
         
            +
              ddog_CharSlice optional_unix_socket_filename;
         
     | 
| 
       1009 
1418 
     | 
    
         
             
              enum ddog_crasht_StacktraceCollection resolve_frames;
         
     | 
| 
      
 1419 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1420 
     | 
    
         
            +
               * The set of signals we should be registered for.
         
     | 
| 
      
 1421 
     | 
    
         
            +
               * If empty, use the default set.
         
     | 
| 
      
 1422 
     | 
    
         
            +
               */
         
     | 
| 
      
 1423 
     | 
    
         
            +
              struct ddog_crasht_Slice_I32 signals;
         
     | 
| 
       1010 
1424 
     | 
    
         
             
              /**
         
     | 
| 
       1011 
1425 
     | 
    
         
             
               * Timeout in milliseconds before the signal handler starts tearing things down to return.
         
     | 
| 
      
 1426 
     | 
    
         
            +
               * If 0, uses the default timeout as specified in
         
     | 
| 
      
 1427 
     | 
    
         
            +
               * `datadog_crashtracker::shared::constants::DD_CRASHTRACK_DEFAULT_TIMEOUT`. Otherwise, uses
         
     | 
| 
      
 1428 
     | 
    
         
            +
               * the specified timeout value.
         
     | 
| 
       1012 
1429 
     | 
    
         
             
               * This is given as a uint32_t, but the actual timeout needs to fit inside of an i32 (max
         
     | 
| 
       1013 
1430 
     | 
    
         
             
               * 2^31-1). This is a limitation of the various interfaces used to guarantee the timeout.
         
     | 
| 
       1014 
1431 
     | 
    
         
             
               */
         
     | 
| 
       1015 
1432 
     | 
    
         
             
              uint32_t timeout_ms;
         
     | 
| 
       1016 
     | 
    
         
            -
               
     | 
| 
       1017 
     | 
    
         
            -
               * Optional filename for a unix domain socket if the receiver is used asynchonously
         
     | 
| 
       1018 
     | 
    
         
            -
               */
         
     | 
| 
       1019 
     | 
    
         
            -
              ddog_CharSlice optional_unix_socket_filename;
         
     | 
| 
      
 1433 
     | 
    
         
            +
              bool use_alt_stack;
         
     | 
| 
       1020 
1434 
     | 
    
         
             
            } ddog_crasht_Config;
         
     | 
| 
       1021 
1435 
     | 
    
         | 
| 
       1022 
1436 
     | 
    
         
             
            typedef struct ddog_crasht_EnvVar {
         
     | 
| 
         @@ -1062,6 +1476,20 @@ typedef struct ddog_crasht_Metadata { 
     | 
|
| 
       1062 
1476 
     | 
    
         
             
              const struct ddog_Vec_Tag *tags;
         
     | 
| 
       1063 
1477 
     | 
    
         
             
            } ddog_crasht_Metadata;
         
     | 
| 
       1064 
1478 
     | 
    
         | 
| 
      
 1479 
     | 
    
         
            +
            typedef struct ddog_crasht_Slice_CInt {
         
     | 
| 
      
 1480 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1481 
     | 
    
         
            +
               * Should be non-null and suitably aligned for the underlying type. It is
         
     | 
| 
      
 1482 
     | 
    
         
            +
               * allowed but not recommended for the pointer to be null when the len is
         
     | 
| 
      
 1483 
     | 
    
         
            +
               * zero.
         
     | 
| 
      
 1484 
     | 
    
         
            +
               */
         
     | 
| 
      
 1485 
     | 
    
         
            +
              const int *ptr;
         
     | 
| 
      
 1486 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1487 
     | 
    
         
            +
               * The number of elements (not bytes) that `.ptr` points to. Must be less
         
     | 
| 
      
 1488 
     | 
    
         
            +
               * than or equal to [isize::MAX].
         
     | 
| 
      
 1489 
     | 
    
         
            +
               */
         
     | 
| 
      
 1490 
     | 
    
         
            +
              uintptr_t len;
         
     | 
| 
      
 1491 
     | 
    
         
            +
            } ddog_crasht_Slice_CInt;
         
     | 
| 
      
 1492 
     | 
    
         
            +
             
     | 
| 
       1065 
1493 
     | 
    
         
             
            /**
         
     | 
| 
       1066 
1494 
     | 
    
         
             
             * A generic result type for when an operation may fail,
         
     | 
| 
       1067 
1495 
     | 
    
         
             
             * or may return <T> in case of success.
         
     | 
| 
         @@ -1204,8 +1632,20 @@ typedef enum ddog_TraceExporterErrorCode { 
     | 
|
| 
       1204 
1632 
     | 
    
         
             
              DDOG_TRACE_EXPORTER_ERROR_CODE_NETWORK_UNKNOWN,
         
     | 
| 
       1205 
1633 
     | 
    
         
             
              DDOG_TRACE_EXPORTER_ERROR_CODE_SERDE,
         
     | 
| 
       1206 
1634 
     | 
    
         
             
              DDOG_TRACE_EXPORTER_ERROR_CODE_TIMED_OUT,
         
     | 
| 
      
 1635 
     | 
    
         
            +
              DDOG_TRACE_EXPORTER_ERROR_CODE_INTERNAL,
         
     | 
| 
      
 1636 
     | 
    
         
            +
              DDOG_TRACE_EXPORTER_ERROR_CODE_PANIC,
         
     | 
| 
       1207 
1637 
     | 
    
         
             
            } ddog_TraceExporterErrorCode;
         
     | 
| 
       1208 
1638 
     | 
    
         | 
| 
      
 1639 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1640 
     | 
    
         
            +
             * Structure containing the agent response to a trace payload
         
     | 
| 
      
 1641 
     | 
    
         
            +
             * MUST be freed with `ddog_trace_exporter_response_free`
         
     | 
| 
      
 1642 
     | 
    
         
            +
             *
         
     | 
| 
      
 1643 
     | 
    
         
            +
             * If the agent payload version is enabled on the trace exporter, and
         
     | 
| 
      
 1644 
     | 
    
         
            +
             * the agent response indicates that the payload version hasn't changed,
         
     | 
| 
      
 1645 
     | 
    
         
            +
             * the body will be empty.
         
     | 
| 
      
 1646 
     | 
    
         
            +
             */
         
     | 
| 
      
 1647 
     | 
    
         
            +
            typedef struct ddog_TraceExporterResponse ddog_TraceExporterResponse;
         
     | 
| 
      
 1648 
     | 
    
         
            +
             
     | 
| 
       1209 
1649 
     | 
    
         
             
            /**
         
     | 
| 
       1210 
1650 
     | 
    
         
             
             * The TraceExporter ingest traces from the tracers serialized as messagepack and forward them to
         
     | 
| 
       1211 
1651 
     | 
    
         
             
             * the agent while applying some transformation.
         
     | 
| 
         @@ -1236,7 +1676,7 @@ typedef struct ddog_TraceExporter ddog_TraceExporter; 
     | 
|
| 
       1236 
1676 
     | 
    
         
             
            typedef struct ddog_TraceExporterConfig ddog_TraceExporterConfig;
         
     | 
| 
       1237 
1677 
     | 
    
         | 
| 
       1238 
1678 
     | 
    
         
             
            /**
         
     | 
| 
       1239 
     | 
    
         
            -
             *  
     | 
| 
      
 1679 
     | 
    
         
            +
             * Structure that contains error information that `TraceExporter` API can return.
         
     | 
| 
       1240 
1680 
     | 
    
         
             
             */
         
     | 
| 
       1241 
1681 
     | 
    
         
             
            typedef struct ddog_TraceExporterError {
         
     | 
| 
       1242 
1682 
     | 
    
         
             
              enum ddog_TraceExporterErrorCode code;
         
     | 
| 
         @@ -1244,31 +1684,28 @@ typedef struct ddog_TraceExporterError { 
     | 
|
| 
       1244 
1684 
     | 
    
         
             
            } ddog_TraceExporterError;
         
     | 
| 
       1245 
1685 
     | 
    
         | 
| 
       1246 
1686 
     | 
    
         
             
            /**
         
     | 
| 
       1247 
     | 
    
         
            -
             *  
     | 
| 
      
 1687 
     | 
    
         
            +
             * FFI compatible configuration for the TelemetryClient.
         
     | 
| 
       1248 
1688 
     | 
    
         
             
             */
         
     | 
| 
       1249 
     | 
    
         
            -
            typedef struct  
     | 
| 
      
 1689 
     | 
    
         
            +
            typedef struct ddog_TelemetryClientConfig {
         
     | 
| 
       1250 
1690 
     | 
    
         
             
              /**
         
     | 
| 
       1251 
     | 
    
         
            -
               *  
     | 
| 
      
 1691 
     | 
    
         
            +
               * How often telemetry should be sent, in milliseconds.
         
     | 
| 
       1252 
1692 
     | 
    
         
             
               */
         
     | 
| 
       1253 
     | 
    
         
            -
               
     | 
| 
       1254 
     | 
    
         
            -
             
     | 
| 
       1255 
     | 
    
         
            -
             
     | 
| 
       1256 
     | 
    
         
            -
             
     | 
| 
       1257 
     | 
    
         
            -
             
     | 
| 
       1258 
     | 
    
         
            -
             
     | 
| 
       1259 
     | 
    
         
            -
             
     | 
| 
       1260 
     | 
    
         
            -
             
     | 
| 
       1261 
     | 
    
         
            -
               
     | 
| 
       1262 
     | 
    
         
            -
               
     | 
| 
       1263 
     | 
    
         
            -
             
     | 
| 
       1264 
     | 
    
         
            -
             
     | 
| 
       1265 
     | 
    
         
            -
             
     | 
| 
       1266 
     | 
    
         
            -
             
     | 
| 
       1267 
     | 
    
         
            -
               
     | 
| 
       1268 
     | 
    
         
            -
             
     | 
| 
       1269 
     | 
    
         
            -
              DDOG_LIBRARY_CONFIG_NAME_DD_ENV,
         
     | 
| 
       1270 
     | 
    
         
            -
              DDOG_LIBRARY_CONFIG_NAME_DD_VERSION,
         
     | 
| 
       1271 
     | 
    
         
            -
            } ddog_LibraryConfigName;
         
     | 
| 
      
 1693 
     | 
    
         
            +
              uint64_t interval;
         
     | 
| 
      
 1694 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1695 
     | 
    
         
            +
               * A V4 UUID that represents a tracer session. This ID should:
         
     | 
| 
      
 1696 
     | 
    
         
            +
               * - Be generated when the tracer starts
         
     | 
| 
      
 1697 
     | 
    
         
            +
               * - Be identical within the context of a host (i.e. multiple threads/processes that belong to
         
     | 
| 
      
 1698 
     | 
    
         
            +
               *   a single instrumented app should share the same runtime_id)
         
     | 
| 
      
 1699 
     | 
    
         
            +
               * - Be associated with traces to allow correlation between traces and telemetry data
         
     | 
| 
      
 1700 
     | 
    
         
            +
               */
         
     | 
| 
      
 1701 
     | 
    
         
            +
              ddog_CharSlice runtime_id;
         
     | 
| 
      
 1702 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1703 
     | 
    
         
            +
               * Whether to enable debug mode for telemetry.
         
     | 
| 
      
 1704 
     | 
    
         
            +
               * When enabled, sets the DD-Telemetry-Debug-Enabled header to true.
         
     | 
| 
      
 1705 
     | 
    
         
            +
               * Defaults to false.
         
     | 
| 
      
 1706 
     | 
    
         
            +
               */
         
     | 
| 
      
 1707 
     | 
    
         
            +
              bool debug_enabled;
         
     | 
| 
      
 1708 
     | 
    
         
            +
            } ddog_TelemetryClientConfig;
         
     | 
| 
       1272 
1709 
     | 
    
         | 
| 
       1273 
1710 
     | 
    
         
             
            typedef enum ddog_LibraryConfigSource {
         
     | 
| 
       1274 
1711 
     | 
    
         
             
              DDOG_LIBRARY_CONFIG_SOURCE_LOCAL_STABLE_CONFIG = 0,
         
     | 
| 
         @@ -1328,8 +1765,10 @@ typedef struct ddog_CString { 
     | 
|
| 
       1328 
1765 
     | 
    
         
             
            } ddog_CString;
         
     | 
| 
       1329 
1766 
     | 
    
         | 
| 
       1330 
1767 
     | 
    
         
             
            typedef struct ddog_LibraryConfig {
         
     | 
| 
       1331 
     | 
    
         
            -
               
     | 
| 
      
 1768 
     | 
    
         
            +
              struct ddog_CString name;
         
     | 
| 
       1332 
1769 
     | 
    
         
             
              struct ddog_CString value;
         
     | 
| 
      
 1770 
     | 
    
         
            +
              enum ddog_LibraryConfigSource source;
         
     | 
| 
      
 1771 
     | 
    
         
            +
              struct ddog_CString config_id;
         
     | 
| 
       1333 
1772 
     | 
    
         
             
            } ddog_LibraryConfig;
         
     | 
| 
       1334 
1773 
     | 
    
         | 
| 
       1335 
1774 
     | 
    
         
             
            /**
         
     | 
| 
         @@ -1363,13 +1802,130 @@ typedef struct ddog_Result_VecLibraryConfig { 
     | 
|
| 
       1363 
1802 
     | 
    
         
             
              };
         
     | 
| 
       1364 
1803 
     | 
    
         
             
            } ddog_Result_VecLibraryConfig;
         
     | 
| 
       1365 
1804 
     | 
    
         | 
| 
      
 1805 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1806 
     | 
    
         
            +
             * C-compatible representation of an anonymous file handle
         
     | 
| 
      
 1807 
     | 
    
         
            +
             */
         
     | 
| 
      
 1808 
     | 
    
         
            +
            typedef struct ddog_TracerMemfdHandle {
         
     | 
| 
      
 1809 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1810 
     | 
    
         
            +
               * File descriptor (relevant only on Linux)
         
     | 
| 
      
 1811 
     | 
    
         
            +
               */
         
     | 
| 
      
 1812 
     | 
    
         
            +
              int fd;
         
     | 
| 
      
 1813 
     | 
    
         
            +
            } ddog_TracerMemfdHandle;
         
     | 
| 
      
 1814 
     | 
    
         
            +
             
     | 
| 
      
 1815 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1816 
     | 
    
         
            +
             * A generic result type for when an operation may fail,
         
     | 
| 
      
 1817 
     | 
    
         
            +
             * or may return <T> in case of success.
         
     | 
| 
      
 1818 
     | 
    
         
            +
             */
         
     | 
| 
      
 1819 
     | 
    
         
            +
            typedef enum ddog_Result_TracerMemfdHandle_Tag {
         
     | 
| 
      
 1820 
     | 
    
         
            +
              DDOG_RESULT_TRACER_MEMFD_HANDLE_OK_TRACER_MEMFD_HANDLE,
         
     | 
| 
      
 1821 
     | 
    
         
            +
              DDOG_RESULT_TRACER_MEMFD_HANDLE_ERR_TRACER_MEMFD_HANDLE,
         
     | 
| 
      
 1822 
     | 
    
         
            +
            } ddog_Result_TracerMemfdHandle_Tag;
         
     | 
| 
      
 1823 
     | 
    
         
            +
             
     | 
| 
      
 1824 
     | 
    
         
            +
            typedef struct ddog_Result_TracerMemfdHandle {
         
     | 
| 
      
 1825 
     | 
    
         
            +
              ddog_Result_TracerMemfdHandle_Tag tag;
         
     | 
| 
      
 1826 
     | 
    
         
            +
              union {
         
     | 
| 
      
 1827 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1828 
     | 
    
         
            +
                  struct ddog_TracerMemfdHandle ok;
         
     | 
| 
      
 1829 
     | 
    
         
            +
                };
         
     | 
| 
      
 1830 
     | 
    
         
            +
                struct {
         
     | 
| 
      
 1831 
     | 
    
         
            +
                  struct ddog_Error err;
         
     | 
| 
      
 1832 
     | 
    
         
            +
                };
         
     | 
| 
      
 1833 
     | 
    
         
            +
              };
         
     | 
| 
      
 1834 
     | 
    
         
            +
            } ddog_Result_TracerMemfdHandle;
         
     | 
| 
      
 1835 
     | 
    
         
            +
             
     | 
| 
      
 1836 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1837 
     | 
    
         
            +
             * Log level for filtering log events.
         
     | 
| 
      
 1838 
     | 
    
         
            +
             */
         
     | 
| 
      
 1839 
     | 
    
         
            +
            typedef enum ddog_LogEventLevel {
         
     | 
| 
      
 1840 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1841 
     | 
    
         
            +
               * The "trace" level.
         
     | 
| 
      
 1842 
     | 
    
         
            +
               *
         
     | 
| 
      
 1843 
     | 
    
         
            +
               * Designates very low priority, often extremely verbose, information.
         
     | 
| 
      
 1844 
     | 
    
         
            +
               */
         
     | 
| 
      
 1845 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_TRACE = 0,
         
     | 
| 
      
 1846 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1847 
     | 
    
         
            +
               * The "debug" level.
         
     | 
| 
      
 1848 
     | 
    
         
            +
               *
         
     | 
| 
      
 1849 
     | 
    
         
            +
               * Designates lower priority information.
         
     | 
| 
      
 1850 
     | 
    
         
            +
               */
         
     | 
| 
      
 1851 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_DEBUG = 1,
         
     | 
| 
      
 1852 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1853 
     | 
    
         
            +
               * The "info" level.
         
     | 
| 
      
 1854 
     | 
    
         
            +
               *
         
     | 
| 
      
 1855 
     | 
    
         
            +
               * Designates useful information.
         
     | 
| 
      
 1856 
     | 
    
         
            +
               */
         
     | 
| 
      
 1857 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_INFO = 2,
         
     | 
| 
      
 1858 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1859 
     | 
    
         
            +
               * The "warn" level.
         
     | 
| 
      
 1860 
     | 
    
         
            +
               *
         
     | 
| 
      
 1861 
     | 
    
         
            +
               * Designates hazardous situations.
         
     | 
| 
      
 1862 
     | 
    
         
            +
               */
         
     | 
| 
      
 1863 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_WARN = 3,
         
     | 
| 
      
 1864 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1865 
     | 
    
         
            +
               * The "error" level.
         
     | 
| 
      
 1866 
     | 
    
         
            +
               *
         
     | 
| 
      
 1867 
     | 
    
         
            +
               * Designates very serious errors.
         
     | 
| 
      
 1868 
     | 
    
         
            +
               */
         
     | 
| 
      
 1869 
     | 
    
         
            +
              DDOG_LOG_EVENT_LEVEL_ERROR = 4,
         
     | 
| 
      
 1870 
     | 
    
         
            +
            } ddog_LogEventLevel;
         
     | 
| 
      
 1871 
     | 
    
         
            +
             
     | 
| 
      
 1872 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1873 
     | 
    
         
            +
             * Target for standard stream output.
         
     | 
| 
      
 1874 
     | 
    
         
            +
             */
         
     | 
| 
      
 1875 
     | 
    
         
            +
            typedef enum ddog_StdTarget {
         
     | 
| 
      
 1876 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1877 
     | 
    
         
            +
               * Write to standard output (stdout).
         
     | 
| 
      
 1878 
     | 
    
         
            +
               */
         
     | 
| 
      
 1879 
     | 
    
         
            +
              DDOG_STD_TARGET_OUT,
         
     | 
| 
      
 1880 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1881 
     | 
    
         
            +
               * Write to standard error (stderr).
         
     | 
| 
      
 1882 
     | 
    
         
            +
               */
         
     | 
| 
      
 1883 
     | 
    
         
            +
              DDOG_STD_TARGET_ERR,
         
     | 
| 
      
 1884 
     | 
    
         
            +
            } ddog_StdTarget;
         
     | 
| 
      
 1885 
     | 
    
         
            +
             
     | 
| 
      
 1886 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1887 
     | 
    
         
            +
             * Configuration for standard stream output.
         
     | 
| 
      
 1888 
     | 
    
         
            +
             */
         
     | 
| 
      
 1889 
     | 
    
         
            +
            typedef struct ddog_StdConfig {
         
     | 
| 
      
 1890 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1891 
     | 
    
         
            +
               * Target stream (stdout or stderr)
         
     | 
| 
      
 1892 
     | 
    
         
            +
               */
         
     | 
| 
      
 1893 
     | 
    
         
            +
              enum ddog_StdTarget target;
         
     | 
| 
      
 1894 
     | 
    
         
            +
            } ddog_StdConfig;
         
     | 
| 
      
 1895 
     | 
    
         
            +
             
     | 
| 
      
 1896 
     | 
    
         
            +
            /**
         
     | 
| 
      
 1897 
     | 
    
         
            +
             * Configuration for file output.
         
     | 
| 
      
 1898 
     | 
    
         
            +
             */
         
     | 
| 
      
 1899 
     | 
    
         
            +
            typedef struct ddog_FileConfig {
         
     | 
| 
      
 1900 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1901 
     | 
    
         
            +
               * Path to the log file
         
     | 
| 
      
 1902 
     | 
    
         
            +
               */
         
     | 
| 
      
 1903 
     | 
    
         
            +
              ddog_CharSlice path;
         
     | 
| 
      
 1904 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1905 
     | 
    
         
            +
               * Maximum total number of files (current + rotated) to keep on disk.
         
     | 
| 
      
 1906 
     | 
    
         
            +
               * When this limit is exceeded, the oldest rotated files are deleted.
         
     | 
| 
      
 1907 
     | 
    
         
            +
               * Set to 0 to disable file cleanup.
         
     | 
| 
      
 1908 
     | 
    
         
            +
               */
         
     | 
| 
      
 1909 
     | 
    
         
            +
              uint64_t max_files;
         
     | 
| 
      
 1910 
     | 
    
         
            +
              /**
         
     | 
| 
      
 1911 
     | 
    
         
            +
               * Maximum size in bytes for each log file.
         
     | 
| 
      
 1912 
     | 
    
         
            +
               * Set to 0 to disable size-based rotation.
         
     | 
| 
      
 1913 
     | 
    
         
            +
               */
         
     | 
| 
      
 1914 
     | 
    
         
            +
              uint64_t max_size_bytes;
         
     | 
| 
      
 1915 
     | 
    
         
            +
            } ddog_FileConfig;
         
     | 
| 
      
 1916 
     | 
    
         
            +
             
     | 
| 
       1366 
1917 
     | 
    
         
             
            #ifdef __cplusplus
         
     | 
| 
       1367 
1918 
     | 
    
         
             
            extern "C" {
         
     | 
| 
       1368 
1919 
     | 
    
         
             
            #endif // __cplusplus
         
     | 
| 
       1369 
1920 
     | 
    
         | 
| 
       1370 
1921 
     | 
    
         
             
            /**
         
     | 
| 
      
 1922 
     | 
    
         
            +
             * Drops the error. It should not be used after this, though the
         
     | 
| 
      
 1923 
     | 
    
         
            +
             * implementation tries to limit the damage in the case of use-after-free and
         
     | 
| 
      
 1924 
     | 
    
         
            +
             * double-free scenarios.
         
     | 
| 
      
 1925 
     | 
    
         
            +
             *
         
     | 
| 
       1371 
1926 
     | 
    
         
             
             * # Safety
         
     | 
| 
       1372 
     | 
    
         
            -
             * 
     | 
| 
      
 1927 
     | 
    
         
            +
             *
         
     | 
| 
      
 1928 
     | 
    
         
            +
             * Only pass null or a pointer to a valid, mutable `ddog_Error`.
         
     | 
| 
       1373 
1929 
     | 
    
         
             
             */
         
     | 
| 
       1374 
1930 
     | 
    
         
             
            void ddog_Error_drop(struct ddog_Error *error);
         
     | 
| 
       1375 
1931 
     | 
    
         | 
| 
         @@ -1475,16 +2031,23 @@ struct ddog_Option_U32 ddog_Option_U32_some(uint32_t v); 
     | 
|
| 
       1475 
2031 
     | 
    
         
             
            struct ddog_Option_U32 ddog_Option_U32_none(void);
         
     | 
| 
       1476 
2032 
     | 
    
         | 
| 
       1477 
2033 
     | 
    
         
             
            /**
         
     | 
| 
      
 2034 
     | 
    
         
            +
             * Drops a `ddog_StringWrapper`. It should not be used after this, though the
         
     | 
| 
      
 2035 
     | 
    
         
            +
             * implementation tries to limit the damage in the case of use-after-free and
         
     | 
| 
      
 2036 
     | 
    
         
            +
             * double-free scenarios.
         
     | 
| 
      
 2037 
     | 
    
         
            +
             *
         
     | 
| 
       1478 
2038 
     | 
    
         
             
             * # Safety
         
     | 
| 
       1479 
     | 
    
         
            -
             * 
     | 
| 
      
 2039 
     | 
    
         
            +
             *
         
     | 
| 
      
 2040 
     | 
    
         
            +
             * Only pass null or a pointer to a valid, mutable `ddog_StringWrapper`.
         
     | 
| 
       1480 
2041 
     | 
    
         
             
             */
         
     | 
| 
       1481 
2042 
     | 
    
         
             
            void ddog_StringWrapper_drop(struct ddog_StringWrapper *s);
         
     | 
| 
       1482 
2043 
     | 
    
         | 
| 
       1483 
2044 
     | 
    
         
             
            /**
         
     | 
| 
       1484 
     | 
    
         
            -
             * Returns a CharSlice of the message 
     | 
| 
       1485 
     | 
    
         
            -
             * 
     | 
| 
      
 2045 
     | 
    
         
            +
             * Returns a CharSlice of the message.
         
     | 
| 
      
 2046 
     | 
    
         
            +
             *
         
     | 
| 
       1486 
2047 
     | 
    
         
             
             * # Safety
         
     | 
| 
      
 2048 
     | 
    
         
            +
             *
         
     | 
| 
       1487 
2049 
     | 
    
         
             
             * Only pass null or a valid reference to a `ddog_StringWrapper`.
         
     | 
| 
      
 2050 
     | 
    
         
            +
             * The string should not be mutated nor dropped while the CharSlice is alive.
         
     | 
| 
       1488 
2051 
     | 
    
         
             
             */
         
     | 
| 
       1489 
2052 
     | 
    
         
             
            ddog_CharSlice ddog_StringWrapper_message(const struct ddog_StringWrapper *s);
         
     | 
| 
       1490 
2053 
     | 
    
         |