|
26 | 26 | #include "swift/AST/Attr.h"
|
27 | 27 | #include "swift/AST/DiagnosticConsumer.h"
|
28 | 28 | #include "swift/AST/DiagnosticEngine.h"
|
| 29 | +#include "swift/AST/IfConfigClauseRangeInfo.h" |
29 | 30 | #include "swift/AST/Stmt.h"
|
30 | 31 | #endif
|
31 | 32 |
|
@@ -190,6 +191,75 @@ bool BridgedASTContext_langOptsHasFeature(BridgedASTContext cContext,
|
190 | 191 | SWIFT_NAME("getter:BridgedASTContext.majorLanguageVersion(self:)")
|
191 | 192 | unsigned BridgedASTContext_majorLanguageVersion(BridgedASTContext cContext);
|
192 | 193 |
|
| 194 | +SWIFT_NAME("BridgedASTContext.langOptsCustomConditionSet(self:_:)") |
| 195 | +bool BridgedASTContext_langOptsCustomConditionSet(BridgedASTContext cContext, |
| 196 | + BridgedStringRef cName); |
| 197 | + |
| 198 | +SWIFT_NAME("BridgedASTContext.langOptsHasFeatureNamed(self:_:)") |
| 199 | +bool BridgedASTContext_langOptsHasFeatureNamed(BridgedASTContext cContext, |
| 200 | + BridgedStringRef cName); |
| 201 | + |
| 202 | +SWIFT_NAME("BridgedASTContext.langOptsHasAttributeNamed(self:_:)") |
| 203 | +bool BridgedASTContext_langOptsHasAttributeNamed(BridgedASTContext cContext, |
| 204 | + BridgedStringRef cName); |
| 205 | + |
| 206 | +SWIFT_NAME("BridgedASTContext.langOptsIsActiveTargetOS(self:_:)") |
| 207 | +bool BridgedASTContext_langOptsIsActiveTargetOS(BridgedASTContext cContext, |
| 208 | + BridgedStringRef cName); |
| 209 | + |
| 210 | +SWIFT_NAME("BridgedASTContext.langOptsIsActiveTargetArchitecture(self:_:)") |
| 211 | +bool BridgedASTContext_langOptsIsActiveTargetArchitecture(BridgedASTContext cContext, |
| 212 | + BridgedStringRef cName); |
| 213 | + |
| 214 | +SWIFT_NAME("BridgedASTContext.langOptsIsActiveTargetEnvironment(self:_:)") |
| 215 | +bool BridgedASTContext_langOptsIsActiveTargetEnvironment(BridgedASTContext cContext, |
| 216 | + BridgedStringRef cName); |
| 217 | + |
| 218 | +SWIFT_NAME("BridgedASTContext.langOptsIsActiveTargetRuntime(self:_:)") |
| 219 | +bool BridgedASTContext_langOptsIsActiveTargetRuntime(BridgedASTContext cContext, |
| 220 | + BridgedStringRef cName); |
| 221 | + |
| 222 | +SWIFT_NAME("BridgedASTContext.langOptsIsActiveTargetPtrAuth(self:_:)") |
| 223 | +bool BridgedASTContext_langOptsIsActiveTargetPtrAuth(BridgedASTContext cContext, |
| 224 | + BridgedStringRef cName); |
| 225 | + |
| 226 | +SWIFT_NAME("getter:BridgedASTContext.langOptsTargetPointerBitWidth(self:)") |
| 227 | +unsigned BridgedASTContext_langOptsTargetPointerBitWidth(BridgedASTContext cContext); |
| 228 | + |
| 229 | +SWIFT_NAME("BridgedASTContext.langOptsGetTargetAtomicBitWidths(self:_:)") |
| 230 | +SwiftInt BridgedASTContext_langOptsGetTargetAtomicBitWidths(BridgedASTContext cContext, |
| 231 | + SwiftInt* _Nullable * _Nonnull cComponents); |
| 232 | + |
| 233 | +enum ENUM_EXTENSIBILITY_ATTR(closed) BridgedEndianness : size_t { |
| 234 | + EndianLittle, |
| 235 | + EndianBig, |
| 236 | +}; |
| 237 | + |
| 238 | +SWIFT_NAME("getter:BridgedASTContext.langOptsTargetEndianness(self:)") |
| 239 | +BridgedEndianness BridgedASTContext_langOptsTargetEndianness(BridgedASTContext cContext); |
| 240 | + |
| 241 | +SWIFT_NAME("BridgedASTContext.langOptsGetLanguageVersion(self:_:)") |
| 242 | +SwiftInt BridgedASTContext_langOptsGetLanguageVersion(BridgedASTContext cContext, |
| 243 | + SwiftInt* _Nullable * _Nonnull cComponents); |
| 244 | + |
| 245 | +SWIFT_NAME("BridgedASTContext.langOptsGetCompilerVersion(self:_:)") |
| 246 | +SwiftInt BridgedASTContext_langOptsGetCompilerVersion(BridgedASTContext cContext, |
| 247 | + SwiftInt* _Nullable * _Nonnull cComponents); |
| 248 | + |
| 249 | +enum ENUM_EXTENSIBILITY_ATTR(closed) BridgedCanImportVersion : size_t { |
| 250 | + CanImportUnversioned, |
| 251 | + CanImportVersion, |
| 252 | + CanImportUnderlyingVersion, |
| 253 | +}; |
| 254 | + |
| 255 | +SWIFT_NAME("BridgedASTContext.canImport(self:importPath:location:versionKind:versionComponents:numVersionComponents:)") |
| 256 | +bool BridgedASTContext_canImport(BridgedASTContext cContext, |
| 257 | + BridgedStringRef importPath, |
| 258 | + BridgedSourceLoc canImportLoc, |
| 259 | + BridgedCanImportVersion versionKind, |
| 260 | + const SwiftInt * _Nullable versionComponents, |
| 261 | + SwiftInt numVersionComponents); |
| 262 | + |
193 | 263 | //===----------------------------------------------------------------------===//
|
194 | 264 | // MARK: AST nodes
|
195 | 265 | //===----------------------------------------------------------------------===//
|
@@ -1844,6 +1914,49 @@ BridgedParameterList BridgedParameterList_createParsed(
|
1844 | 1914 | BridgedASTContext cContext, BridgedSourceLoc cLeftParenLoc,
|
1845 | 1915 | BridgedArrayRef cParameters, BridgedSourceLoc cRightParenLoc);
|
1846 | 1916 |
|
| 1917 | +//===----------------------------------------------------------------------===// |
| 1918 | +// MARK: #if handling |
| 1919 | +//===----------------------------------------------------------------------===// |
| 1920 | + |
| 1921 | +/// Bridged version of IfConfigClauseRangeInfo::ClauseKind. |
| 1922 | +enum ENUM_EXTENSIBILITY_ATTR(closed) BridgedIfConfigClauseKind : size_t { |
| 1923 | + IfConfigActive, |
| 1924 | + IfConfigInactive, |
| 1925 | + IfConfigEnd |
| 1926 | +}; |
| 1927 | + |
| 1928 | +/// Bridged version of IfConfigClauseRangeInfo. |
| 1929 | +struct BridgedIfConfigClauseRangeInfo { |
| 1930 | + BridgedSourceLoc directiveLoc; |
| 1931 | + BridgedSourceLoc bodyLoc; |
| 1932 | + BridgedSourceLoc endLoc; |
| 1933 | + BridgedIfConfigClauseKind kind; |
| 1934 | + |
| 1935 | +#ifdef USED_IN_CPP_SOURCE |
| 1936 | + swift::IfConfigClauseRangeInfo unbridged() const { |
| 1937 | + swift::IfConfigClauseRangeInfo::ClauseKind clauseKind; |
| 1938 | + switch (kind) { |
| 1939 | + case IfConfigActive: |
| 1940 | + clauseKind = swift::IfConfigClauseRangeInfo::ActiveClause; |
| 1941 | + break; |
| 1942 | + |
| 1943 | + case IfConfigInactive: |
| 1944 | + clauseKind = swift::IfConfigClauseRangeInfo::InactiveClause; |
| 1945 | + break; |
| 1946 | + |
| 1947 | + case IfConfigEnd: |
| 1948 | + clauseKind = swift::IfConfigClauseRangeInfo::EndDirective; |
| 1949 | + break; |
| 1950 | + } |
| 1951 | + |
| 1952 | + return swift::IfConfigClauseRangeInfo(directiveLoc.unbridged(), |
| 1953 | + bodyLoc.unbridged(), |
| 1954 | + endLoc.unbridged(), |
| 1955 | + clauseKind); |
| 1956 | + } |
| 1957 | +#endif |
| 1958 | +}; |
| 1959 | + |
1847 | 1960 | //===----------------------------------------------------------------------===//
|
1848 | 1961 | // MARK: Plugins
|
1849 | 1962 | //===----------------------------------------------------------------------===//
|
|
0 commit comments