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