mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[SourceKit] Include AccessLevel attributes in structure (SR-5978) (#12086)
This commit is contained in:
@@ -625,10 +625,47 @@ Optional<UIdent> SwiftLangSupport::getUIDForDeclAttribute(const swift::DeclAttri
|
||||
return Attr_Objc;
|
||||
}
|
||||
}
|
||||
case DAK_AccessControl: {
|
||||
static UIdent Attr_Private("source.decl.attribute.private");
|
||||
static UIdent Attr_FilePrivate("source.decl.attribute.fileprivate");
|
||||
static UIdent Attr_Internal("source.decl.attribute.internal");
|
||||
static UIdent Attr_Public("source.decl.attribute.public");
|
||||
static UIdent Attr_Open("source.decl.attribute.open");
|
||||
|
||||
switch (cast<AbstractAccessControlAttr>(Attr)->getAccess()) {
|
||||
case AccessLevel::Private:
|
||||
return Attr_Private;
|
||||
case AccessLevel::FilePrivate:
|
||||
return Attr_FilePrivate;
|
||||
case AccessLevel::Internal:
|
||||
return Attr_Internal;
|
||||
case AccessLevel::Public:
|
||||
return Attr_Public;
|
||||
case AccessLevel::Open:
|
||||
return Attr_Open;
|
||||
}
|
||||
}
|
||||
case DAK_SetterAccess: {
|
||||
static UIdent Attr_Private("source.decl.attribute.setter_access.private");
|
||||
static UIdent Attr_FilePrivate("source.decl.attribute.setter_access.fileprivate");
|
||||
static UIdent Attr_Internal("source.decl.attribute.setter_access.internal");
|
||||
static UIdent Attr_Public("source.decl.attribute.setter_access.public");
|
||||
static UIdent Attr_Open("source.decl.attribute.setter_access.open");
|
||||
|
||||
switch (cast<AbstractAccessControlAttr>(Attr)->getAccess()) {
|
||||
case AccessLevel::Private:
|
||||
return Attr_Private;
|
||||
case AccessLevel::FilePrivate:
|
||||
return Attr_FilePrivate;
|
||||
case AccessLevel::Internal:
|
||||
return Attr_Internal;
|
||||
case AccessLevel::Public:
|
||||
return Attr_Public;
|
||||
case AccessLevel::Open:
|
||||
return Attr_Open;
|
||||
}
|
||||
}
|
||||
|
||||
// We handle access control explicitly.
|
||||
case DAK_AccessControl:
|
||||
case DAK_SetterAccess:
|
||||
// Ignore these.
|
||||
case DAK_ShowInInterface:
|
||||
case DAK_RawDocComment:
|
||||
|
||||
Reference in New Issue
Block a user