|
79 | 79 | // |
80 | 80 | // OTABSL_OPTION_USE_STD_ANY |
81 | 81 | // |
82 | | -// This option controls whether absl::any is implemented as an alias to |
| 82 | +// This option controls whether absl::OTABSL_OPTION_NAMESPACE_NAME::any is implemented as an alias to |
83 | 83 | // std::any, or as an independent implementation. |
84 | 84 | // |
85 | 85 | // A value of 0 means to use Abseil's implementation. This requires only C++11 |
|
93 | 93 | // useful when you are building your entire program, including all of its |
94 | 94 | // dependencies, from source. It should not be used otherwise -- for example, |
95 | 95 | // if you are distributing Abseil in a binary package manager -- since in |
96 | | -// mode 2, absl::any will name a different type, with a different mangled name |
| 96 | +// mode 2, absl::OTABSL_OPTION_NAMESPACE_NAME::any will name a different type, with a different mangled name |
97 | 97 | // and binary layout, depending on the compiler flags passed by the end user. |
98 | 98 | // For more info, see https://abseil.io/about/design/dropin-types. |
99 | 99 | // |
100 | 100 | // User code should not inspect this macro. To check in the preprocessor if |
101 | | -// absl::any is a typedef of std::any, use the feature macro OTABSL_USES_STD_ANY. |
| 101 | +// absl::OTABSL_OPTION_NAMESPACE_NAME::any is a typedef of std::any, use the feature macro OTABSL_USES_STD_ANY. |
102 | 102 |
|
103 | 103 | #define OTABSL_OPTION_USE_STD_ANY 0 |
104 | 104 |
|
105 | 105 |
|
106 | 106 | // OTABSL_OPTION_USE_STD_OPTIONAL |
107 | 107 | // |
108 | | -// This option controls whether absl::optional is implemented as an alias to |
| 108 | +// This option controls whether absl::OTABSL_OPTION_NAMESPACE_NAME::optional is implemented as an alias to |
109 | 109 | // std::optional, or as an independent implementation. |
110 | 110 | // |
111 | 111 | // A value of 0 means to use Abseil's implementation. This requires only C++11 |
|
118 | 118 | // and use an alias only if a working std::optional is available. This option |
119 | 119 | // is useful when you are building your program from source. It should not be |
120 | 120 | // used otherwise -- for example, if you are distributing Abseil in a binary |
121 | | -// package manager -- since in mode 2, absl::optional will name a different |
| 121 | +// package manager -- since in mode 2, absl::OTABSL_OPTION_NAMESPACE_NAME::optional will name a different |
122 | 122 | // type, with a different mangled name and binary layout, depending on the |
123 | 123 | // compiler flags passed by the end user. For more info, see |
124 | 124 | // https://abseil.io/about/design/dropin-types. |
125 | 125 |
|
126 | 126 | // User code should not inspect this macro. To check in the preprocessor if |
127 | | -// absl::optional is a typedef of std::optional, use the feature macro |
| 127 | +// absl::OTABSL_OPTION_NAMESPACE_NAME::optional is a typedef of std::optional, use the feature macro |
128 | 128 | // OTABSL_USES_STD_OPTIONAL. |
129 | 129 |
|
130 | 130 | #define OTABSL_OPTION_USE_STD_OPTIONAL 0 |
131 | 131 |
|
132 | 132 |
|
133 | 133 | // OTABSL_OPTION_USE_STD_STRING_VIEW |
134 | 134 | // |
135 | | -// This option controls whether absl::string_view is implemented as an alias to |
| 135 | +// This option controls whether absl::OTABSL_OPTION_NAMESPACE_NAME::string_view is implemented as an alias to |
136 | 136 | // std::string_view, or as an independent implementation. |
137 | 137 | // |
138 | 138 | // A value of 0 means to use Abseil's implementation. This requires only C++11 |
|
145 | 145 | // and use an alias only if a working std::string_view is available. This |
146 | 146 | // option is useful when you are building your program from source. It should |
147 | 147 | // not be used otherwise -- for example, if you are distributing Abseil in a |
148 | | -// binary package manager -- since in mode 2, absl::string_view will name a |
| 148 | +// binary package manager -- since in mode 2, absl::OTABSL_OPTION_NAMESPACE_NAME::string_view will name a |
149 | 149 | // different type, with a different mangled name and binary layout, depending on |
150 | 150 | // the compiler flags passed by the end user. For more info, see |
151 | 151 | // https://abseil.io/about/design/dropin-types. |
152 | 152 | // |
153 | 153 | // User code should not inspect this macro. To check in the preprocessor if |
154 | | -// absl::string_view is a typedef of std::string_view, use the feature macro |
| 154 | +// absl::OTABSL_OPTION_NAMESPACE_NAME::string_view is a typedef of std::string_view, use the feature macro |
155 | 155 | // OTABSL_USES_STD_STRING_VIEW. |
156 | 156 |
|
157 | 157 | #define OTABSL_OPTION_USE_STD_STRING_VIEW 0 |
158 | 158 |
|
159 | 159 | // OTABSL_OPTION_USE_STD_VARIANT |
160 | 160 | // |
161 | | -// This option controls whether absl::variant is implemented as an alias to |
| 161 | +// This option controls whether absl::OTABSL_OPTION_NAMESPACE_NAME::variant is implemented as an alias to |
162 | 162 | // std::variant, or as an independent implementation. |
163 | 163 | // |
164 | 164 | // A value of 0 means to use Abseil's implementation. This requires only C++11 |
|
171 | 171 | // and use an alias only if a working std::variant is available. This option |
172 | 172 | // is useful when you are building your program from source. It should not be |
173 | 173 | // used otherwise -- for example, if you are distributing Abseil in a binary |
174 | | -// package manager -- since in mode 2, absl::variant will name a different |
| 174 | +// package manager -- since in mode 2, absl::OTABSL_OPTION_NAMESPACE_NAME::variant will name a different |
175 | 175 | // type, with a different mangled name and binary layout, depending on the |
176 | 176 | // compiler flags passed by the end user. For more info, see |
177 | 177 | // https://abseil.io/about/design/dropin-types. |
178 | 178 | // |
179 | 179 | // User code should not inspect this macro. To check in the preprocessor if |
180 | | -// absl::variant is a typedef of std::variant, use the feature macro |
| 180 | +// absl::OTABSL_OPTION_NAMESPACE_NAME::variant is a typedef of std::variant, use the feature macro |
181 | 181 | // OTABSL_USES_STD_VARIANT. |
182 | 182 |
|
183 | 183 | #define OTABSL_OPTION_USE_STD_VARIANT 0 |
184 | 184 |
|
185 | 185 |
|
186 | | -// OTABSL_OPTION_USE_INLINE_NAMESPACE |
187 | | -// OTABSL_OPTION_INLINE_NAMESPACE_NAME |
| 186 | +// OTABSL_OPTION_NAMESPACE_NAME |
188 | 187 | // |
189 | | -// These options controls whether all entities in the absl namespace are |
190 | | -// contained within an inner inline namespace. This does not affect the |
191 | | -// user-visible API of Abseil, but it changes the mangled names of all symbols. |
192 | | -// |
193 | | -// This can be useful as a version tag if you are distributing Abseil in |
194 | | -// precompiled form. This will prevent a binary library build of Abseil with |
195 | | -// one inline namespace being used with headers configured with a different |
196 | | -// inline namespace name. Binary packagers are reminded that Abseil does not |
197 | | -// guarantee any ABI stability in Abseil, so any update of Abseil or |
198 | | -// configuration change in such a binary package should be combined with a |
199 | | -// new, unique value for the inline namespace name. |
200 | | -// |
201 | | -// A value of 0 means not to use inline namespaces. |
202 | | -// |
203 | | -// A value of 1 means to use an inline namespace with the given name inside |
204 | | -// namespace absl. If this is set, OTABSL_OPTION_INLINE_NAMESPACE_NAME must also |
205 | | -// be changed to a new, unique identifier name. In particular "head" is not |
206 | | -// allowed. |
| 188 | +// All codes in otabsl are under OTABSL_OPTION_NAMESPACE_NAME, we do not use inline namespace to avoid |
| 189 | +// conlict with external Abseil. |
207 | 190 |
|
208 | | -#define OTABSL_OPTION_USE_INLINE_NAMESPACE 1 |
209 | | -#define OTABSL_OPTION_INLINE_NAMESPACE_NAME otel_v1 |
| 191 | +#define OTABSL_OPTION_NAMESPACE_NAME otel_v1 |
210 | 192 |
|
211 | 193 | #endif // OTABSL_BASE_OPTIONS_H_ |
0 commit comments