mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[SourceKit] Stop printing normal comments in clang generated interface
Generated interfaces for Clang modules used to try printing normal comments between decls extracted from the header text. That was because doc-comment was not common in C/ObjC headers. But mainly because of "import as member feature" Clang decls aren't printed in the order as they appear in the header file, the logic determinig which comment belongs to which decl was not working property. We've decided to remove that feature and only print the proper doc-comments as it has been getting common. rdar://93731287
This commit is contained in:
@@ -502,9 +502,6 @@ struct PrintOptions {
|
||||
/// (e.g. the overridden method in the superclass) if such comment is found.
|
||||
bool PrintDocumentationComments = false;
|
||||
|
||||
/// Whether to print regular comments from clang module headers.
|
||||
bool PrintRegularClangComments = false;
|
||||
|
||||
/// When true, printing interface from a source file will print the original
|
||||
/// source text for applicable declarations, in order to preserve the
|
||||
/// formatting.
|
||||
@@ -645,7 +642,6 @@ struct PrintOptions {
|
||||
result.TypeDefinitions = true;
|
||||
result.VarInitializers = true;
|
||||
result.PrintDocumentationComments = true;
|
||||
result.PrintRegularClangComments = true;
|
||||
result.PrintLongAttrsOnSeparateLines = true;
|
||||
result.AlwaysTryPrintParameterLabels = true;
|
||||
return result;
|
||||
|
||||
@@ -1138,9 +1138,7 @@ public:
|
||||
// handles this, but we need to insert it for clang doc comments when not
|
||||
// printing other clang comments. Do it now so the printDeclPre callback
|
||||
// happens after the newline.
|
||||
if (Options.PrintDocumentationComments &&
|
||||
!Options.PrintRegularClangComments &&
|
||||
D->hasClangNode()) {
|
||||
if (Options.PrintDocumentationComments && D->hasClangNode()) {
|
||||
auto clangNode = D->getClangNode();
|
||||
auto clangDecl = clangNode.getAsDecl();
|
||||
if (clangDecl &&
|
||||
@@ -1150,7 +1148,6 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Printer.callPrintDeclPre(D, Options.BracketOptions);
|
||||
|
||||
if (Options.PrintCompatibilityFeatureChecks) {
|
||||
|
||||
@@ -118,7 +118,6 @@ PrintOptions PrintOptions::printDocInterface() {
|
||||
result.ArgAndParamPrinting =
|
||||
PrintOptions::ArgAndParamPrintingMode::BothAlways;
|
||||
result.PrintDocumentationComments = false;
|
||||
result.PrintRegularClangComments = false;
|
||||
result.PrintFunctionRepresentationAttrs =
|
||||
PrintOptions::FunctionRepresentationMode::None;
|
||||
return result;
|
||||
|
||||
@@ -44,108 +44,6 @@
|
||||
|
||||
using namespace swift;
|
||||
|
||||
namespace {
|
||||
/// Prints regular comments from clang module headers.
|
||||
class ClangCommentPrinter : public ASTPrinter {
|
||||
public:
|
||||
ClangCommentPrinter(ASTPrinter &OtherPrinter, ClangModuleLoader &ClangLoader)
|
||||
: OtherPrinter(OtherPrinter),
|
||||
ClangLoader(ClangLoader) {}
|
||||
|
||||
private:
|
||||
void printDeclPre(const Decl *D,
|
||||
std::optional<BracketOptions> Bracket) override;
|
||||
void printDeclPost(const Decl *D,
|
||||
std::optional<BracketOptions> Bracket) override;
|
||||
void avoidPrintDeclPost(const Decl *D) override;
|
||||
// Forwarding implementations.
|
||||
|
||||
void printText(StringRef Text) override {
|
||||
return OtherPrinter.printText(Text);
|
||||
}
|
||||
void printDeclLoc(const Decl *D) override {
|
||||
return OtherPrinter.printDeclLoc(D);
|
||||
}
|
||||
void printDeclNameEndLoc(const Decl *D) override {
|
||||
return OtherPrinter.printDeclNameEndLoc(D);
|
||||
}
|
||||
void printDeclNameOrSignatureEndLoc(const Decl *D) override {
|
||||
return OtherPrinter.printDeclNameOrSignatureEndLoc(D);
|
||||
}
|
||||
void printTypePre(const TypeLoc &TL) override {
|
||||
return OtherPrinter.printTypePre(TL);
|
||||
}
|
||||
void printTypePost(const TypeLoc &TL) override {
|
||||
return OtherPrinter.printTypePost(TL);
|
||||
}
|
||||
void printTypeRef(Type T, const TypeDecl *TD, Identifier Name,
|
||||
PrintNameContext NameContext) override {
|
||||
return OtherPrinter.printTypeRef(T, TD, Name, NameContext);
|
||||
}
|
||||
void printModuleRef(ModuleEntity Mod, Identifier Name) override {
|
||||
return OtherPrinter.printModuleRef(Mod, Name);
|
||||
}
|
||||
void
|
||||
printSynthesizedExtensionPre(const ExtensionDecl *ED,
|
||||
TypeOrExtensionDecl Target,
|
||||
std::optional<BracketOptions> Bracket) override {
|
||||
return OtherPrinter.printSynthesizedExtensionPre(ED, Target, Bracket);
|
||||
}
|
||||
|
||||
void printSynthesizedExtensionPost(
|
||||
const ExtensionDecl *ED, TypeOrExtensionDecl Target,
|
||||
std::optional<BracketOptions> Bracket) override {
|
||||
return OtherPrinter.printSynthesizedExtensionPost(ED, Target, Bracket);
|
||||
}
|
||||
|
||||
void printStructurePre(PrintStructureKind Kind, const Decl *D) override {
|
||||
return OtherPrinter.printStructurePre(Kind, D);
|
||||
}
|
||||
void printStructurePost(PrintStructureKind Kind, const Decl *D) override {
|
||||
return OtherPrinter.printStructurePost(Kind, D);
|
||||
}
|
||||
|
||||
void printNamePre(PrintNameContext Context) override {
|
||||
return OtherPrinter.printNamePre(Context);
|
||||
}
|
||||
void printNamePost(PrintNameContext Context) override {
|
||||
return OtherPrinter.printNamePost(Context);
|
||||
}
|
||||
|
||||
// Prints regular comments of the header the clang node comes from, until
|
||||
// the location of the node. Keeps track of the comments that were printed
|
||||
// from the file and resumes printing for the next node from the same file.
|
||||
// This expects to get passed clang nodes in source-order (at least within the
|
||||
// same header).
|
||||
void printCommentsUntil(ClangNode Node);
|
||||
|
||||
void printComment(StringRef Text, unsigned StartLocCol);
|
||||
|
||||
bool isDocumentationComment(clang::SourceLocation CommentLoc,
|
||||
ClangNode Node) const;
|
||||
|
||||
unsigned getResumeOffset(clang::FileID FID) const {
|
||||
auto OffsI = ResumeOffsets.find(FID);
|
||||
if (OffsI != ResumeOffsets.end())
|
||||
return OffsI->second;
|
||||
return 0;
|
||||
}
|
||||
void setResumeOffset(clang::FileID FID, unsigned Offset) {
|
||||
ResumeOffsets[FID] = Offset;
|
||||
}
|
||||
|
||||
bool shouldPrintNewLineBefore(ClangNode Node) const;
|
||||
void updateLastEntityLine(clang::SourceLocation Loc);
|
||||
void updateLastEntityLine(clang::FileID FID, unsigned LineNo);
|
||||
|
||||
ASTPrinter &OtherPrinter;
|
||||
ClangModuleLoader &ClangLoader;
|
||||
llvm::DenseMap<clang::FileID, unsigned> ResumeOffsets;
|
||||
SmallVector<StringRef, 2> PendingComments;
|
||||
llvm::DenseMap<clang::FileID, unsigned> LastEntityLines;
|
||||
};
|
||||
} // unnamed namespace
|
||||
|
||||
static const clang::Module *
|
||||
getUnderlyingClangModuleForImport(ImportDecl *Import) {
|
||||
if (auto *ClangMod = Import->getClangModule())
|
||||
@@ -761,14 +659,8 @@ void swift::ide::printModuleInterface(
|
||||
if (GroupNames.empty())
|
||||
std::stable_sort(SwiftDecls.begin(), SwiftDecls.end(), compareSwiftDecls);
|
||||
|
||||
ASTPrinter *PrinterToUse = &Printer;
|
||||
|
||||
ClangCommentPrinter RegularCommentPrinter(Printer, Importer);
|
||||
if (Options.PrintRegularClangComments)
|
||||
PrinterToUse = &RegularCommentPrinter;
|
||||
|
||||
auto PrintDecl = [&](Decl *D) {
|
||||
return printModuleInterfaceDecl(D, *PrinterToUse, AdjustedOptions,
|
||||
return printModuleInterfaceDecl(D, Printer, AdjustedOptions,
|
||||
PrintSynthesizedExtensions);
|
||||
};
|
||||
|
||||
@@ -808,7 +700,7 @@ void swift::ide::printModuleInterface(
|
||||
// also print the decls from any underscored Swift cross-import overlays it
|
||||
// is the underlying module of, transitively.
|
||||
if (GroupNames.empty()) {
|
||||
printCrossImportOverlays(TargetMod, SwiftContext, *PrinterToUse,
|
||||
printCrossImportOverlays(TargetMod, SwiftContext, Printer,
|
||||
AdjustedOptions, PrintSynthesizedExtensions);
|
||||
}
|
||||
}
|
||||
@@ -911,18 +803,11 @@ void swift::ide::printHeaderInterface(
|
||||
getEffectiveClangNode(RHS).getLocation());
|
||||
});
|
||||
|
||||
ASTPrinter *PrinterToUse = &Printer;
|
||||
|
||||
ClangCommentPrinter RegularCommentPrinter(Printer, Importer);
|
||||
if (Options.PrintRegularClangComments)
|
||||
PrinterToUse = &RegularCommentPrinter;
|
||||
|
||||
for (auto *D : ClangDecls) {
|
||||
// Even though the corresponding clang decl should be top-level, its
|
||||
// equivalent Swift decl may not be. E.g. a top-level function may be mapped
|
||||
// to a property accessor in Swift.
|
||||
D = getTopLevelDecl(D);
|
||||
ASTPrinter &Printer = *PrinterToUse;
|
||||
if (!AdjustedOptions.shouldPrint(D)) {
|
||||
Printer.callAvoidPrintDeclPost(D);
|
||||
continue;
|
||||
@@ -932,215 +817,6 @@ void swift::ide::printHeaderInterface(
|
||||
}
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::avoidPrintDeclPost(const Decl *D) {
|
||||
auto CD = D->getClangDecl();
|
||||
if (!CD)
|
||||
return;
|
||||
const auto &Ctx = ClangLoader.getClangASTContext();
|
||||
const auto &SM = Ctx.getSourceManager();
|
||||
auto EndLoc = CD->getSourceRange().getEnd();
|
||||
if (EndLoc.isInvalid())
|
||||
return;
|
||||
clang::FileID FID = SM.getFileID(EndLoc);
|
||||
if (FID.isInvalid())
|
||||
return;
|
||||
auto Loc = EndLoc;
|
||||
|
||||
for (unsigned Line = SM.getSpellingLineNumber(EndLoc);
|
||||
Loc.isValid() && SM.getSpellingLineNumber(Loc) == Line;
|
||||
Loc = Loc.getLocWithOffset(1));
|
||||
if (Loc.isInvalid())
|
||||
return;
|
||||
if (SM.getFileOffset(Loc) > getResumeOffset(FID))
|
||||
setResumeOffset(FID, SM.getFileOffset(Loc));
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::printDeclPre(const Decl *D,
|
||||
std::optional<BracketOptions> Bracket) {
|
||||
// Skip parameters, since we do not gracefully handle nested declarations on a
|
||||
// single line.
|
||||
// FIXME: we should fix that, since it also affects struct members, etc.
|
||||
if (!isa<ParamDecl>(D)) {
|
||||
if (auto ClangN = swift::ide::getEffectiveClangNode(D)) {
|
||||
printCommentsUntil(ClangN);
|
||||
if (shouldPrintNewLineBefore(ClangN)) {
|
||||
*this << "\n";
|
||||
printIndent();
|
||||
}
|
||||
updateLastEntityLine(ClangN.getSourceRange().getBegin());
|
||||
}
|
||||
}
|
||||
return OtherPrinter.printDeclPre(D, Bracket);
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::printDeclPost(const Decl *D,
|
||||
std::optional<BracketOptions> Bracket) {
|
||||
OtherPrinter.printDeclPost(D, Bracket);
|
||||
|
||||
// Skip parameters; see printDeclPre().
|
||||
if (isa<ParamDecl>(D))
|
||||
return;
|
||||
|
||||
for (auto CommentText : PendingComments) {
|
||||
*this << " " << unicode::sanitizeUTF8(CommentText);
|
||||
}
|
||||
PendingComments.clear();
|
||||
if (auto ClangN = swift::ide::getEffectiveClangNode(D))
|
||||
updateLastEntityLine(ClangN.getSourceRange().getEnd());
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::printCommentsUntil(ClangNode Node) {
|
||||
const auto &Ctx = ClangLoader.getClangASTContext();
|
||||
const auto &SM = Ctx.getSourceManager();
|
||||
|
||||
clang::SourceLocation NodeLoc =
|
||||
SM.getFileLoc(Node.getSourceRange().getBegin());
|
||||
if (NodeLoc.isInvalid())
|
||||
return;
|
||||
unsigned NodeLineNo = SM.getSpellingLineNumber(NodeLoc);
|
||||
clang::FileID FID = SM.getFileID(NodeLoc);
|
||||
if (FID.isInvalid())
|
||||
return;
|
||||
clang::SourceLocation FileLoc = SM.getLocForStartOfFile(FID);
|
||||
StringRef Text = SM.getBufferData(FID);
|
||||
if (Text.empty())
|
||||
return;
|
||||
|
||||
const char *BufStart = Text.data();
|
||||
const char *BufPtr = BufStart + getResumeOffset(FID);
|
||||
const char *BufEnd = BufStart + Text.size();
|
||||
assert(BufPtr <= BufEnd);
|
||||
if (BufPtr == BufEnd)
|
||||
return; // nothing left.
|
||||
|
||||
clang::Lexer Lex(FileLoc, Ctx.getLangOpts(), BufStart, BufPtr, BufEnd);
|
||||
Lex.SetCommentRetentionState(true);
|
||||
|
||||
unsigned &LastPrintedLineNo = LastEntityLines[FID];
|
||||
clang::Token Tok;
|
||||
do {
|
||||
BufPtr = Lex.getBufferLocation();
|
||||
Lex.LexFromRawLexer(Tok);
|
||||
if (Tok.is(clang::tok::eof))
|
||||
break;
|
||||
if (Tok.isNot(clang::tok::comment))
|
||||
continue;
|
||||
|
||||
// Reached a comment.
|
||||
|
||||
clang::SourceLocation CommentLoc = Tok.getLocation();
|
||||
std::pair<clang::FileID, unsigned> LocInfo =
|
||||
SM.getDecomposedLoc(CommentLoc);
|
||||
assert(LocInfo.first == FID);
|
||||
|
||||
unsigned LineNo = SM.getLineNumber(LocInfo.first, LocInfo.second);
|
||||
if (LineNo > NodeLineNo)
|
||||
break; // Comment is past the clang node.
|
||||
|
||||
bool IsDocComment = isDocumentationComment(CommentLoc, Node);
|
||||
|
||||
// Print out the comment.
|
||||
|
||||
StringRef CommentText(BufStart + LocInfo.second, Tok.getLength());
|
||||
|
||||
// Check if comment is on same line but after the declaration.
|
||||
if (SM.isBeforeInTranslationUnit(NodeLoc, Tok.getLocation())) {
|
||||
if (!IsDocComment)
|
||||
PendingComments.push_back(CommentText);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (LastPrintedLineNo && LineNo - LastPrintedLineNo > 1) {
|
||||
*this << "\n";
|
||||
printIndent();
|
||||
}
|
||||
if (!IsDocComment) {
|
||||
unsigned StartLocCol = SM.getSpellingColumnNumber(Tok.getLocation());
|
||||
printComment(CommentText, StartLocCol);
|
||||
}
|
||||
LastPrintedLineNo =
|
||||
SM.getLineNumber(LocInfo.first, LocInfo.second + Tok.getLength());
|
||||
|
||||
} while (true);
|
||||
|
||||
// Resume printing comments from this point.
|
||||
setResumeOffset(FID, BufPtr - BufStart);
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::printComment(StringRef RawText, unsigned StartCol) {
|
||||
unsigned WhitespaceToTrim = StartCol ? StartCol - 1 : 0;
|
||||
SmallVector<StringRef, 8> Lines;
|
||||
trimLeadingWhitespaceFromLines(RawText, WhitespaceToTrim, Lines);
|
||||
|
||||
for (auto Line : Lines) {
|
||||
*this << unicode::sanitizeUTF8(Line) << "\n";
|
||||
printIndent();
|
||||
}
|
||||
}
|
||||
|
||||
bool ClangCommentPrinter::isDocumentationComment(
|
||||
clang::SourceLocation CommentLoc, ClangNode Node) const {
|
||||
const clang::Decl *D = Node.getAsDecl();
|
||||
if (!D)
|
||||
return false;
|
||||
|
||||
const auto &Ctx = ClangLoader.getClangASTContext();
|
||||
const auto &SM = Ctx.getSourceManager();
|
||||
const clang::RawComment *RC = Ctx.getRawCommentForAnyRedecl(D);
|
||||
if (!RC)
|
||||
return false;
|
||||
|
||||
clang::SourceRange DocRange = RC->getSourceRange();
|
||||
if (SM.isBeforeInTranslationUnit(CommentLoc, DocRange.getBegin()) ||
|
||||
SM.isBeforeInTranslationUnit(DocRange.getEnd(), CommentLoc))
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ClangCommentPrinter::shouldPrintNewLineBefore(ClangNode Node) const {
|
||||
assert(Node);
|
||||
const auto &Ctx = ClangLoader.getClangASTContext();
|
||||
const auto &SM = Ctx.getSourceManager();
|
||||
|
||||
clang::SourceLocation NodeLoc =
|
||||
SM.getFileLoc(Node.getSourceRange().getBegin());
|
||||
if (NodeLoc.isInvalid())
|
||||
return false;
|
||||
unsigned NodeLineNo = SM.getSpellingLineNumber(NodeLoc);
|
||||
clang::FileID FID = SM.getFileID(NodeLoc);
|
||||
if (FID.isInvalid())
|
||||
return false;
|
||||
|
||||
unsigned LastEntiyLine = 0;
|
||||
auto It = LastEntityLines.find(FID);
|
||||
if (It != LastEntityLines.end())
|
||||
LastEntiyLine = It->second;
|
||||
return (NodeLineNo > LastEntiyLine) && NodeLineNo - LastEntiyLine > 1;
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::updateLastEntityLine(clang::SourceLocation Loc) {
|
||||
if (Loc.isInvalid())
|
||||
return;
|
||||
|
||||
const auto &Ctx = ClangLoader.getClangASTContext();
|
||||
const auto &SM = Ctx.getSourceManager();
|
||||
|
||||
unsigned LineNo = SM.getSpellingLineNumber(Loc);
|
||||
clang::FileID FID = SM.getFileID(Loc);
|
||||
if (FID.isInvalid())
|
||||
return;
|
||||
|
||||
updateLastEntityLine(FID, LineNo);
|
||||
}
|
||||
|
||||
void ClangCommentPrinter::updateLastEntityLine(clang::FileID FID,
|
||||
unsigned LineNo) {
|
||||
assert(!FID.isInvalid());
|
||||
unsigned &LastEntiyLine = LastEntityLines[FID];
|
||||
if (LineNo > LastEntiyLine)
|
||||
LastEntiyLine = LineNo;
|
||||
}
|
||||
|
||||
void swift::ide::printSymbolicSwiftClangModuleInterface(
|
||||
ModuleDecl *M, ASTPrinter &Printer, const clang::Module *clangModule) {
|
||||
std::string headerComment;
|
||||
@@ -1154,7 +830,6 @@ void swift::ide::printSymbolicSwiftClangModuleInterface(
|
||||
auto popts =
|
||||
PrintOptions::printModuleInterface(/*printFullConvention=*/false);
|
||||
popts.PrintDocumentationComments = false;
|
||||
popts.PrintRegularClangComments = false;
|
||||
popts.SkipInlineCXXNamespace = true;
|
||||
|
||||
auto &SwiftContext = M->getTopLevelModule()->getASTContext();
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// RUN: %empty-directory(%t)
|
||||
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -print-regular-comments -swift-version 5 | %FileCheck -check-prefix=CHECK-SWIFT-5 -check-prefix=CHECK-BOTH %s
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -swift-version 5 | %FileCheck -check-prefix=CHECK-SWIFT-5 -check-prefix=CHECK-BOTH %s
|
||||
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -print-regular-comments -swift-version 4 | %FileCheck -check-prefix=CHECK-SWIFT-4 -check-prefix=CHECK-BOTH %s
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -swift-version 4 | %FileCheck -check-prefix=CHECK-SWIFT-4 -check-prefix=CHECK-BOTH %s
|
||||
|
||||
// REQUIRES: objc_interop
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
// RUN: %empty-directory(%t)
|
||||
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -print-regular-comments -swift-version 5 | %FileCheck -check-prefix=CHECK-SWIFT-5 %s
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -swift-version 5 | %FileCheck -check-prefix=CHECK-SWIFT-5 %s
|
||||
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -print-regular-comments -swift-version 4 | %FileCheck -check-prefix=CHECK-SWIFT-4 %s
|
||||
// RUN: %target-swift-ide-test -F %S/Inputs/custom-frameworks -print-module -source-filename %s -module-to-print=APINotesFrameworkTest -function-definitions=false -swift-version 4 | %FileCheck -check-prefix=CHECK-SWIFT-4 %s
|
||||
|
||||
// CHECK-SWIFT-5: func jumpTo(x: Double, y: Double, z: Double)
|
||||
// CHECK-SWIFT-4: func jumpTo(x: Double, y: Double, z: Double)
|
||||
|
||||
@@ -12,9 +12,9 @@
|
||||
// RUN: %target-swift-frontend -typecheck %s -import-objc-header %S/Inputs/enum-error.h -DERRORS -verify
|
||||
|
||||
// RUN: echo '#include "enum-error.h"' > %t.m
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/enum-error.h -import-objc-header %S/Inputs/enum-error.h -print-regular-comments --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t.txt
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/enum-error.h -import-objc-header %S/Inputs/enum-error.h --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t.txt
|
||||
// RUN: %FileCheck -check-prefix=HEADER %s < %t.txt
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/enum-error.h -import-objc-header %S/Inputs/enum-error.h -print-regular-comments --skip-private-stdlib-decls -skip-underscored-stdlib-protocols --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t2.txt
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/enum-error.h -import-objc-header %S/Inputs/enum-error.h --skip-private-stdlib-decls -skip-underscored-stdlib-protocols --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t2.txt
|
||||
// RUN: %FileCheck -check-prefix=HEADER-NO-PRIVATE %s < %t2.txt
|
||||
|
||||
import Foundation
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -enable-objc-interop -import-objc-header %S/Inputs/nested_protocol_name.h -typecheck -verify %s
|
||||
|
||||
// RUN: echo '#include "nested_protocol_name.h"' > %t.m
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/nested_protocol_name.h -import-objc-header %S/Inputs/nested_protocol_name.h -print-regular-comments --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t.txt
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/nested_protocol_name.h -import-objc-header %S/Inputs/nested_protocol_name.h --cc-args %target-cc-options -fsyntax-only %t.m -I %S/Inputs > %t.txt
|
||||
// RUN: %FileCheck -check-prefix=HEADER %s < %t.txt
|
||||
|
||||
// rdar://59431058
|
||||
@@ -15,7 +15,6 @@
|
||||
// HEADER: func addLimb(_ limb: (any Trunk.Branch)!)
|
||||
// HEADER: func addLimbs(_ limbs: [any Trunk.Branch]!)
|
||||
// HEADER: }
|
||||
// HEADER: // NS_SWIFT_NAME(Trunk.Branch)
|
||||
// HEADER: protocol Branch {
|
||||
// HEADER: func flower()
|
||||
// HEADER: }
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
import Foundation
|
||||
import CoreFoundation
|
||||
import Dispatch
|
||||
|
||||
var MY_MACRO: Int32 { get }
|
||||
|
||||
var MACRO_DUP: Int32 { get }
|
||||
|
||||
func doSomethingInHead(_ arg: Int32)
|
||||
|
||||
class BaseInHead {
|
||||
class func doIt(_ arg: Int32)
|
||||
func doIt(_ arg: Int32)
|
||||
@@ -18,15 +14,12 @@ class SameName {
|
||||
}
|
||||
protocol SameNameProtocol {
|
||||
}
|
||||
|
||||
extension BaseInHead {
|
||||
class func doItInCategory()
|
||||
func doItInCategory()
|
||||
}
|
||||
|
||||
protocol Superproto {
|
||||
func lala()
|
||||
}
|
||||
|
||||
class MyLittleCFType {
|
||||
}
|
||||
|
||||
@@ -1,10 +1,6 @@
|
||||
|
||||
var MY_MACRO: Int32 { get }
|
||||
|
||||
var MACRO_DUP: Int32 { get }
|
||||
|
||||
func doSomethingInHead(_ arg: Int32)
|
||||
|
||||
class BaseInHead {
|
||||
class func doIt(_ arg: Int32)
|
||||
func doIt(_ arg: Int32)
|
||||
@@ -15,15 +11,12 @@ class SameName {
|
||||
}
|
||||
protocol SameNameProtocol {
|
||||
}
|
||||
|
||||
extension BaseInHead {
|
||||
class func doItInCategory()
|
||||
func doItInCategory()
|
||||
}
|
||||
|
||||
protocol Superproto {
|
||||
func lala()
|
||||
}
|
||||
|
||||
class MyLittleCFType : _CFObject {
|
||||
}
|
||||
|
||||
@@ -1,13 +1,9 @@
|
||||
import Foundation
|
||||
import CoreFoundation
|
||||
import Dispatch
|
||||
|
||||
var MY_MACRO: Int32 { get }
|
||||
|
||||
var MACRO_DUP: Int32 { get }
|
||||
|
||||
func doSomethingInHead(_ arg: Int32)
|
||||
|
||||
class BaseInHead {
|
||||
class func doIt(_ arg: Int32)
|
||||
func doIt(_ arg: Int32)
|
||||
@@ -18,15 +14,12 @@ class SameName {
|
||||
}
|
||||
protocol SameNameProtocol {
|
||||
}
|
||||
|
||||
extension BaseInHead {
|
||||
class func doItInCategory()
|
||||
func doItInCategory()
|
||||
}
|
||||
|
||||
protocol Superproto {
|
||||
func lala()
|
||||
}
|
||||
|
||||
class MyLittleCFType : _CFObject {
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// RUN: %empty-directory(%t)
|
||||
|
||||
// RUN: %target-swift-ide-test -print-module -source-filename %s -module-to-print=BoolBridgingTests -function-definitions=false -print-regular-comments -skip-unavailable -F %S/Inputs/mock-sdk > %t.txt
|
||||
// RUN: %target-swift-ide-test -print-module -source-filename %s -module-to-print=BoolBridgingTests -function-definitions=false -skip-unavailable -F %S/Inputs/mock-sdk > %t.txt
|
||||
// RUN: diff -u <(tail -n +9 %s) %t.txt
|
||||
|
||||
// REQUIRES: objc_interop
|
||||
@@ -8,76 +8,57 @@
|
||||
// EXPECTED OUTPUT STARTS BELOW THIS LINE.
|
||||
@_exported import Foundation
|
||||
|
||||
// stdbool.h uses #define, so this test does as well.
|
||||
|
||||
func testCBool(_: Bool) -> Bool
|
||||
func testObjCBool(_: Bool) -> Bool
|
||||
func testDarwinBoolean(_: Bool) -> Bool
|
||||
|
||||
typealias CBoolTypedef = Bool
|
||||
typealias ObjCBoolTypedef = ObjCBool
|
||||
typealias DarwinBooleanTypedef = DarwinBoolean
|
||||
|
||||
func testCBoolTypedef(_: CBoolTypedef) -> CBoolTypedef
|
||||
func testObjCBoolTypedef(_: Bool) -> Bool
|
||||
func testDarwinBooleanTypedef(_: Bool) -> Bool
|
||||
|
||||
func testCBoolPointer(_: UnsafeMutablePointer<Bool>) -> UnsafePointer<Bool>
|
||||
func testObjCBoolPointer(_: UnsafeMutablePointer<ObjCBool>) -> UnsafePointer<ObjCBool>
|
||||
func testDarwinBooleanPointer(_: UnsafeMutablePointer<DarwinBoolean>) -> UnsafePointer<DarwinBoolean>
|
||||
|
||||
typealias CBoolFn = @convention(c) (Bool) -> Bool
|
||||
typealias ObjCBoolFn = @convention(c) (ObjCBool) -> ObjCBool
|
||||
typealias DarwinBooleanFn = @convention(c) (DarwinBoolean) -> DarwinBoolean
|
||||
|
||||
typealias CBoolBlock = (Bool) -> Bool
|
||||
typealias ObjCBoolBlock = (Bool) -> Bool
|
||||
typealias DarwinBooleanBlock = (Bool) -> Bool
|
||||
|
||||
func testCBoolFnToBlock(_: @convention(c) (Bool) -> Bool) -> (Bool) -> Bool
|
||||
func testObjCBoolFnToBlock(_: @convention(c) (ObjCBool) -> ObjCBool) -> (Bool) -> Bool
|
||||
func testDarwinBooleanFnToBlock(_: @convention(c) (DarwinBoolean) -> DarwinBoolean) -> (Bool) -> Bool
|
||||
|
||||
func testCBoolFnToBlockTypedef(_: CBoolFn) -> CBoolBlock
|
||||
func testObjCBoolFnToBlockTypedef(_: ObjCBoolFn) -> ObjCBoolBlock
|
||||
func testDarwinBooleanFnToBlockTypedef(_: DarwinBooleanFn) -> DarwinBooleanBlock
|
||||
|
||||
typealias CBoolFnToBlockType = (CBoolFn) -> (Bool) -> Bool
|
||||
typealias ObjCBoolFnToBlockType = (ObjCBoolFn) -> (ObjCBool) -> ObjCBool
|
||||
typealias DarwinBooleanFnToBlockType = (DarwinBooleanFn) -> (DarwinBoolean) -> DarwinBoolean
|
||||
|
||||
var globalObjCBoolFnToBlockFP: @convention(c) (ObjCBoolFn) -> (ObjCBool) -> ObjCBool
|
||||
var globalObjCBoolFnToBlockFPP: UnsafeMutablePointer<@convention(c) (ObjCBoolFn) -> (ObjCBool) -> ObjCBool>?
|
||||
var globalObjCBoolFnToBlockBP: @convention(block) (ObjCBoolFn) -> (ObjCBool) -> ObjCBool
|
||||
|
||||
var globalCBoolFn: CBoolFn
|
||||
var globalObjCBoolFn: ObjCBoolFn
|
||||
var globalDarwinBooleanFn: DarwinBooleanFn
|
||||
|
||||
var globalCBoolBlock: @convention(block) (Bool) -> Bool
|
||||
var globalObjCBoolBlock: @convention(block) (ObjCBool) -> ObjCBool
|
||||
var globalDarwinBooleanBlock: @convention(block) (DarwinBoolean) -> DarwinBoolean
|
||||
|
||||
class Test : NSObject {
|
||||
var propCBool: Bool
|
||||
var propObjCBool: Bool
|
||||
var propDarwinBoolean: Bool
|
||||
|
||||
func testCBool(_ b: Bool) -> Bool
|
||||
func testObjCBool(_ b: Bool) -> Bool
|
||||
func testDarwinBoolean(_ b: Bool) -> Bool
|
||||
|
||||
var propCBoolBlock: (Bool) -> Bool
|
||||
var propObjCBoolBlock: (Bool) -> Bool
|
||||
var propDarwinBooleanBlock: (Bool) -> Bool
|
||||
|
||||
func testCBoolFn(toBlock fp: @convention(c) (Bool) -> Bool) -> (Bool) -> Bool
|
||||
func testObjCBoolFn(toBlock fp: @convention(c) (ObjCBool) -> ObjCBool) -> (Bool) -> Bool
|
||||
func testDarwinBooleanFn(toBlock fp: @convention(c) (DarwinBoolean) -> DarwinBoolean) -> (Bool) -> Bool
|
||||
|
||||
func produceCBoolBlockTypedef(_ outBlock: AutoreleasingUnsafeMutablePointer<(@convention(block) (Bool) -> Bool)?>)
|
||||
func produceObjCBoolBlockTypedef(_ outBlock: AutoreleasingUnsafeMutablePointer<(@convention(block) (ObjCBool) -> ObjCBool)?>)
|
||||
func produceDarwinBooleanBlockTypedef(_ outBlock: AutoreleasingUnsafeMutablePointer<(@convention(block) (DarwinBoolean) -> DarwinBoolean)?>)
|
||||
|
||||
init()
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
// CHECK_NSARRAY: class NSMutableArray : NSArray
|
||||
// CHECK_NSARRAY: func setArray(_ otherArray: [Any])
|
||||
|
||||
// RUN: %target-swift-ide-test -print-module -source-filename %s -module-to-print=Foundation.NSKeyValueCoding -function-definitions=false -print-regular-comments > %t/Foundation.NSKeyValueCoding.printed.txt
|
||||
// RUN: %target-swift-ide-test -print-module -source-filename %s -module-to-print=Foundation.NSKeyValueCoding -function-definitions=false > %t/Foundation.NSKeyValueCoding.printed.txt
|
||||
// RUN: %FileCheck -input-file %t/Foundation.NSKeyValueCoding.printed.txt -check-prefix=CHECK2 %s
|
||||
|
||||
// CHECK2: extension NSObject
|
||||
|
||||
@@ -3,10 +3,10 @@
|
||||
|
||||
// RUN: %empty-directory(%t)
|
||||
|
||||
// RUN: %target-swift-ide-test(mock-sdk: -F %S/Inputs/mock-sdk) -print-module -source-filename %s -module-to-print=Foo -function-definitions=false -print-regular-comments > %t/Foo.printed.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: -F %S/Inputs/mock-sdk) -print-module -source-filename %s -module-to-print=Foo -function-definitions=false > %t/Foo.printed.txt
|
||||
// RUN: diff -u %S/Inputs/mock-sdk/Foo.printed.txt %t/Foo.printed.txt
|
||||
|
||||
// RUN: %target-swift-ide-test(mock-sdk: -F %S/Inputs/mock-sdk) -print-interface -print-module -source-filename %s -module-to-print=Foo -function-definitions=false -print-regular-comments > %t/Foo.interface.printed.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: -F %S/Inputs/mock-sdk) -print-interface -print-module -source-filename %s -module-to-print=Foo -function-definitions=false > %t/Foo.interface.printed.txt
|
||||
// RUN: %FileCheck %s -check-prefix=INTERFACE1 < %t/Foo.interface.printed.txt
|
||||
|
||||
// RUN: %target-swift-ide-test(mock-sdk: -F %S/Inputs/mock-sdk) -print-module -source-filename %s -module-to-print=Foo -function-definitions=false -prefer-type-repr=true -module-print-submodules > %t/Foo.printed.recursive.txt
|
||||
|
||||
@@ -2,21 +2,21 @@
|
||||
// REQUIRES: objc_interop
|
||||
|
||||
// RUN: echo '#include "header-to-print.h"' > %t.m
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.m -I %S/Inputs/print_clang_header > %t.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.m -I %S/Inputs/print_clang_header > %t.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.printed.txt %t.txt
|
||||
|
||||
// RUN: %clang %target-cc-options -isysroot %clang-importer-sdk-path -fmodules -x objective-c-header %S/Inputs/print_clang_header/header-to-print.h -o %t.h.pch
|
||||
// RUN: touch %t.empty.m
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.empty.m -I %S/Inputs/print_clang_header -include %t.h > %t.with-pch.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.empty.m -I %S/Inputs/print_clang_header -include %t.h > %t.with-pch.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.command-line-include.printed.txt %t.with-pch.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.empty.m -I %S/Inputs/print_clang_header -include %S/Inputs/print_clang_header/header-to-print.h > %t.with-include.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.empty.m -I %S/Inputs/print_clang_header -include %S/Inputs/print_clang_header/header-to-print.h > %t.with-include.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.command-line-include.printed.txt %t.with-include.txt
|
||||
|
||||
// RUN: echo '#include <Foo/header-to-print.h>' > %t.framework.m
|
||||
// RUN: sed -e "s:INPUT_DIR:%S/Inputs/print_clang_header:g" -e "s:OUT_DIR:%t:g" %S/Inputs/print_clang_header/Foo-vfsoverlay.yaml > %t.yaml
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.framework.m -F %t -ivfsoverlay %t.yaml -Xclang -fmodule-name=Foo > %t.framework.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.framework.m -F %t -ivfsoverlay %t.yaml -Xclang -fmodule-name=Foo > %t.framework.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.printed.txt %t.framework.txt
|
||||
|
||||
// Test header interface printing from a clang module.
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.framework.m -F %t -ivfsoverlay %t.yaml > %t.module.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -enable-objc-interop -disable-objc-attr-requires-foundation-module --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.framework.m -F %t -ivfsoverlay %t.yaml > %t.module.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.module.printed.txt %t.module.txt
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
|
||||
// RUN: echo '#include "header-to-print-availability.h"' > %t.m
|
||||
// RUN: cp %S/Inputs/print_clang_header/header-to-print-availability.h %t/
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %t/header-to-print-availability.h -print-regular-comments --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.m -I %t > %t.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %t/header-to-print-availability.h --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.m -I %t > %t.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print-availability.h.printed.txt %t.txt
|
||||
|
||||
// RUN: echo '@import HeaderToPrintAvailability;' > %t.module.m
|
||||
// Test header interface printing from a clang module.
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print-availability.h -print-regular-comments --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.module.m -I %S/Inputs/print_clang_header > %t.module.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print-availability.h --cc-args %target-cc-options -isysroot %clang-importer-sdk-path -fsyntax-only %t.module.m -I %S/Inputs/print_clang_header > %t.module.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print-availability.h.module.printed.txt %t.module.txt
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
// RUN: echo '#include "header-to-print.h"' > %t.i386.m
|
||||
// RUN: %empty-directory(%t)
|
||||
// RUN: %build-clang-importer-objc-overlays
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -print-regular-comments -I %t --cc-args -arch i386 -isysroot %clang-importer-sdk-path -fsyntax-only %t.i386.m -I %S/Inputs/print_clang_header > %t.i386.txt
|
||||
// RUN: %target-swift-ide-test -source-filename %s -print-header -header-to-print %S/Inputs/print_clang_header/header-to-print.h -I %t --cc-args -arch i386 -isysroot %clang-importer-sdk-path -fsyntax-only %t.i386.m -I %S/Inputs/print_clang_header > %t.i386.txt
|
||||
// RUN: diff -u %S/Inputs/print_clang_header/header-to-print.h.printed.txt %t.i386.txt
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// RUN: %empty-directory(%t)
|
||||
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -print-module -source-filename %s -module-to-print=SwiftNameTests -function-definitions=false -print-regular-comments -F %S/Inputs/mock-sdk > %t.txt
|
||||
// RUN: %target-swift-ide-test(mock-sdk: %clang-importer-sdk) -print-module -source-filename %s -module-to-print=SwiftNameTests -function-definitions=false -F %S/Inputs/mock-sdk > %t.txt
|
||||
// RUN: diff -u <(tail -n +9 %s) %t.txt
|
||||
|
||||
// REQUIRES: objc_interop
|
||||
@@ -8,10 +8,7 @@
|
||||
// EXPECTED OUTPUT STARTS BELOW THIS LINE.
|
||||
@_exported import Foundation
|
||||
|
||||
|
||||
class Test : NSObject {
|
||||
|
||||
// "Factory methods" that we'd rather have as initializers.
|
||||
@available(*, unavailable, message: "superseded by import of -[NSObject init]")
|
||||
convenience init()
|
||||
@available(*, unavailable, renamed: "init()", message: "Not available in Swift")
|
||||
@@ -19,23 +16,18 @@ class Test : NSObject {
|
||||
convenience init(dummyParam: ())
|
||||
@available(*, unavailable, renamed: "init(dummyParam:)", message: "Not available in Swift")
|
||||
class func b() -> Self
|
||||
|
||||
convenience init(cc x: Any)
|
||||
@available(*, unavailable, renamed: "init(cc:)", message: "Not available in Swift")
|
||||
class func c(_ x: Any) -> Self
|
||||
convenience init(_ x: Any)
|
||||
@available(*, unavailable, renamed: "init(_:)", message: "Not available in Swift")
|
||||
class func d(_ x: Any) -> Self
|
||||
|
||||
convenience init(aa a: Any, _ b: Any, cc c: Any)
|
||||
@available(*, unavailable, renamed: "init(aa:_:cc:)", message: "Not available in Swift")
|
||||
class func e(_ a: Any, e b: Any, e c: Any) -> Self
|
||||
|
||||
/*not inherited*/ init(fixedType: ())
|
||||
@available(*, unavailable, renamed: "init(fixedType:)", message: "Not available in Swift")
|
||||
class func f() -> Test
|
||||
|
||||
// Would-be initializers.
|
||||
class func zz() -> Self
|
||||
@available(swift, obsoleted: 3, renamed: "zz()")
|
||||
class func testZ() -> Self
|
||||
@@ -45,12 +37,9 @@ class Test : NSObject {
|
||||
class func xx(_ x: Any, bb xx: Any) -> Self
|
||||
@available(*, unavailable, renamed: "xx(_:bb:)", message: "Not available in Swift")
|
||||
class func testX(_ x: Any, xx: Any) -> Self
|
||||
|
||||
init()
|
||||
}
|
||||
|
||||
class TestError : NSObject {
|
||||
// Factory methods with NSError.
|
||||
convenience init(error: ()) throws
|
||||
@available(*, unavailable, renamed: "init(error:)", message: "Not available in Swift")
|
||||
class func err1() throws -> Self
|
||||
@@ -63,7 +52,6 @@ class TestError : NSObject {
|
||||
convenience init(error: (), block: @escaping () -> Void) throws
|
||||
@available(*, unavailable, renamed: "init(error:block:)", message: "Not available in Swift")
|
||||
class func err4(callback block: @escaping () -> Void) throws -> Self
|
||||
|
||||
convenience init(aa x: Any?) throws
|
||||
@available(*, unavailable, renamed: "init(aa:)", message: "Not available in Swift")
|
||||
class func err5(_ x: Any?) throws -> Self
|
||||
@@ -73,8 +61,6 @@ class TestError : NSObject {
|
||||
convenience init(block: @escaping () -> Void) throws
|
||||
@available(*, unavailable, renamed: "init(block:)", message: "Not available in Swift")
|
||||
class func err7(callback block: @escaping () -> Void) throws -> Self
|
||||
|
||||
// Would-be initializers.
|
||||
class func ww(_ x: Any?) throws -> Self
|
||||
@available(swift, obsoleted: 3, renamed: "ww(_:)")
|
||||
class func testW(_ x: Any?) throws -> Self
|
||||
@@ -89,7 +75,6 @@ class TestError : NSObject {
|
||||
class func testV2() throws -> Self
|
||||
init()
|
||||
}
|
||||
|
||||
class TestSub : Test {
|
||||
@available(*, unavailable, message: "superseded by import of -[NSObject init]")
|
||||
convenience init()
|
||||
@@ -99,7 +84,6 @@ class TestSub : Test {
|
||||
convenience init(aa a: Any, _ b: Any, cc c: Any)
|
||||
init()
|
||||
}
|
||||
|
||||
class TestErrorSub : TestError {
|
||||
convenience init(error: ()) throws
|
||||
convenience init(aa x: Any?, error: ()) throws
|
||||
|
||||
@@ -41,7 +41,7 @@ public class ASwiftType {
|
||||
}
|
||||
|
||||
// LibA is a mixed framework with no source info and a submodule
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=12:36 -print-raw-response | %FileCheck %s --check-prefix=CHECKA
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=11:36 -print-raw-response | %FileCheck %s --check-prefix=CHECKA
|
||||
// CHECKA: key.name: "ASwiftType"
|
||||
// CHECKA: key.modulename: "LibA"
|
||||
// CHECKA: key.decl_lang: source.lang.swift
|
||||
@@ -60,7 +60,7 @@ framework module LibA {
|
||||
@interface AObjcType
|
||||
@end
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=12:54 -print-raw-response | %FileCheck %s --check-prefix=CHECKAOBJ
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=11:54 -print-raw-response | %FileCheck %s --check-prefix=CHECKAOBJ
|
||||
// CHECKAOBJ: key.name: "AObjcType"
|
||||
// CHECKAOBJ: key.line: [[@LINE-5]]
|
||||
// CHECKAOBJ: key.column: 12
|
||||
@@ -72,7 +72,7 @@ framework module LibA {
|
||||
@interface ASubType
|
||||
@end
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=12:70 -print-raw-response | %FileCheck %s --check-prefix=CHECKASUB
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=11:70 -print-raw-response | %FileCheck %s --check-prefix=CHECKASUB
|
||||
// CHECKASUB: key.name: "ASubType"
|
||||
// CHECKASUB: key.line: [[@LINE-5]]
|
||||
// CHECKASUB: key.column: 12
|
||||
@@ -84,7 +84,7 @@ framework module LibA {
|
||||
public class BType {}
|
||||
|
||||
// LibB has source info
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=14:32 -print-raw-response | %FileCheck %s --check-prefix=CHECKB
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=13:32 -print-raw-response | %FileCheck %s --check-prefix=CHECKB
|
||||
// CHECKB: key.name: "BType"
|
||||
// CHECKB: key.line: [[@LINE-5]]
|
||||
// CHECKB: key.column: 14
|
||||
@@ -96,7 +96,7 @@ public class BType {}
|
||||
public class CType {}
|
||||
|
||||
// LibC has no source info
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=14:47 -print-raw-response | %FileCheck %s --check-prefix=CHECKC
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=13:47 -print-raw-response | %FileCheck %s --check-prefix=CHECKC
|
||||
// CHECKC: key.name: "CType"
|
||||
// CHECKC: key.modulename: "LibC"
|
||||
// CHECKC: key.decl_lang: source.lang.swift
|
||||
@@ -105,7 +105,7 @@ public class CType {}
|
||||
@interface DType
|
||||
@end
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=14:57 -print-raw-response | %FileCheck %s --check-prefix=CHECKD
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module LibA -- -F %t/frameworks -target %target-triple == -req=cursor -pos=13:57 -print-raw-response | %FileCheck %s --check-prefix=CHECKD
|
||||
// CHECKD: key.name: "DType"
|
||||
// CHECKD: key.line: [[@LINE-5]]
|
||||
// CHECKD: key.column: 12
|
||||
|
||||
@@ -11,14 +11,14 @@ import Foo
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module Foo -- \
|
||||
// RUN: -F %S/../Inputs/libIDE-mock-sdk \
|
||||
// RUN: -target %target-triple %clang-importer-sdk-nosource -I %t \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=60:15 | %FileCheck %s -check-prefix=CHECK-FOO
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 \
|
||||
// RUN: == -async -dont-print-request -req=cursor -pos=49:15 | %FileCheck %s -check-prefix=CHECK-FOO
|
||||
|
||||
// CHECK-FOO: <decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>FooRuncingOptions
|
||||
// CHECK-FOO: <decl.struct><syntaxtype.keyword>struct</syntaxtype.keyword> <decl.name>FooRuncingOptions
|
||||
|
||||
@@ -31,7 +31,7 @@ var x: FooClassBase
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module Foo -- -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import -I %t.overlays -F %S/../Inputs/libIDE-mock-sdk \
|
||||
// RUN: -target %target-triple %clang-importer-sdk-nosource -I %t \
|
||||
// RUN: == -req=cursor -pos=204:67 | %FileCheck -check-prefix=CHECK1 %s
|
||||
// RUN: == -req=cursor -pos=176:67 | %FileCheck -check-prefix=CHECK1 %s
|
||||
// The cursor points to 'FooClassBase' inside the list of base classes, see 'gen_clang_module.swift.response'
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module Foo -- -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import -I %t.overlays -F %S/../Inputs/libIDE-mock-sdk \
|
||||
@@ -47,7 +47,7 @@ var x: FooClassBase
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module Foo -- -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import -I %t.overlays -F %S/../Inputs/libIDE-mock-sdk \
|
||||
// RUN: -target %target-triple %clang-importer-sdk-nosource -I %t \
|
||||
// RUN: == -req=cursor -pos=231:20 | %FileCheck -check-prefix=CHECK2 %s
|
||||
// RUN: == -req=cursor -pos=196:20 | %FileCheck -check-prefix=CHECK2 %s
|
||||
// The cursor points inside the interface, see 'gen_clang_module.swift.response'
|
||||
|
||||
// CHECK2: source.lang.swift.decl.function.method.instance ({{.*}}Foo.framework/Headers/Foo.h:170:10-170:27)
|
||||
@@ -61,7 +61,7 @@ var x: FooClassBase
|
||||
// RUN: == -req=find-usr -usr "c:objc(cs)FooClassDerived(im)fooInstanceFunc0" | %FileCheck -check-prefix=CHECK-USR %s
|
||||
// The returned line:col points inside the interface, see 'gen_clang_module.swift.response'
|
||||
|
||||
// CHECK-USR: (231:15-231:33)
|
||||
// CHECK-USR: (196:15-196:33)
|
||||
|
||||
// RUN: %sourcekitd-test -req=interface-gen-open -module Foo -- -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import -I %t.overlays -F %S/../Inputs/libIDE-mock-sdk \
|
||||
// RUN: -target %target-triple %clang-importer-sdk-nosource -I %t \
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,7 @@
|
||||
import FooHelper.FooHelperExplicit
|
||||
import FooHelper.FooHelperSub
|
||||
|
||||
|
||||
public func fooHelperFunc1(_ a: Int32) -> Int32
|
||||
|
||||
public var FooHelperUnnamedEnumeratorA1: Int { get }
|
||||
public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
|
||||
@@ -40,87 +38,87 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 67,
|
||||
key.offset: 66,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 74,
|
||||
key.offset: 73,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 79,
|
||||
key.offset: 78,
|
||||
key.length: 14
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 94,
|
||||
key.offset: 93,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 96,
|
||||
key.offset: 95,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 99,
|
||||
key.offset: 98,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 109,
|
||||
key.offset: 108,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 116,
|
||||
key.offset: 114,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 123,
|
||||
key.offset: 121,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 127,
|
||||
key.offset: 125,
|
||||
key.length: 28
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 157,
|
||||
key.offset: 155,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 163,
|
||||
key.offset: 161,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 169,
|
||||
key.offset: 167,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 176,
|
||||
key.offset: 174,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 180,
|
||||
key.offset: 178,
|
||||
key.length: 28
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 210,
|
||||
key.offset: 208,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 216,
|
||||
key.offset: 214,
|
||||
key.length: 3
|
||||
}
|
||||
]
|
||||
@@ -147,25 +145,25 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 99,
|
||||
key.offset: 98,
|
||||
key.length: 5,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 109,
|
||||
key.offset: 108,
|
||||
key.length: 5,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 157,
|
||||
key.offset: 155,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 210,
|
||||
key.offset: 208,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
}
|
||||
@@ -175,14 +173,14 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
key.kind: source.lang.swift.decl.function.free,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "fooHelperFunc1(_:)",
|
||||
key.offset: 74,
|
||||
key.offset: 73,
|
||||
key.length: 40,
|
||||
key.typename: "Int32",
|
||||
key.nameoffset: 79,
|
||||
key.nameoffset: 78,
|
||||
key.namelength: 26,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 67,
|
||||
key.offset: 66,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -191,7 +189,7 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "a",
|
||||
key.offset: 94,
|
||||
key.offset: 93,
|
||||
key.length: 10,
|
||||
key.typename: "Int32"
|
||||
}
|
||||
@@ -201,16 +199,16 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
key.kind: source.lang.swift.decl.var.global,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooHelperUnnamedEnumeratorA1",
|
||||
key.offset: 123,
|
||||
key.offset: 121,
|
||||
key.length: 45,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 127,
|
||||
key.nameoffset: 125,
|
||||
key.namelength: 28,
|
||||
key.bodyoffset: 162,
|
||||
key.bodyoffset: 160,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 116,
|
||||
key.offset: 114,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -220,16 +218,16 @@ public var FooHelperUnnamedEnumeratorA2: Int { get }
|
||||
key.kind: source.lang.swift.decl.var.global,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooHelperUnnamedEnumeratorA2",
|
||||
key.offset: 176,
|
||||
key.offset: 174,
|
||||
key.length: 45,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 180,
|
||||
key.nameoffset: 178,
|
||||
key.namelength: 28,
|
||||
key.bodyoffset: 215,
|
||||
key.bodyoffset: 213,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 169,
|
||||
key.offset: 167,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,8 +1,6 @@
|
||||
import FooHelper
|
||||
|
||||
|
||||
public func fooSubFunc1(_ a: Int32) -> Int32
|
||||
|
||||
public struct FooSubEnum1 : Equatable, RawRepresentable {
|
||||
|
||||
public init(_ rawValue: UInt32)
|
||||
@@ -13,7 +11,6 @@ public struct FooSubEnum1 : Equatable, RawRepresentable {
|
||||
}
|
||||
public var FooSubEnum1X: FooSubEnum1 { get }
|
||||
public var FooSubEnum1Y: FooSubEnum1 { get }
|
||||
|
||||
public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
|
||||
[
|
||||
@@ -29,202 +26,202 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 19,
|
||||
key.offset: 18,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 26,
|
||||
key.offset: 25,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 31,
|
||||
key.offset: 30,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 43,
|
||||
key.offset: 42,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 45,
|
||||
key.offset: 44,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 48,
|
||||
key.offset: 47,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 58,
|
||||
key.offset: 57,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 65,
|
||||
key.offset: 63,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 72,
|
||||
key.offset: 70,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 79,
|
||||
key.offset: 77,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 93,
|
||||
key.offset: 91,
|
||||
key.length: 9
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 104,
|
||||
key.offset: 102,
|
||||
key.length: 16
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 128,
|
||||
key.offset: 126,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 135,
|
||||
key.offset: 133,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 140,
|
||||
key.offset: 138,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 142,
|
||||
key.offset: 140,
|
||||
key.length: 8
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 152,
|
||||
key.offset: 150,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 165,
|
||||
key.offset: 163,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 172,
|
||||
key.offset: 170,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 177,
|
||||
key.offset: 175,
|
||||
key.length: 8
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 187,
|
||||
key.offset: 185,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 200,
|
||||
key.offset: 198,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 207,
|
||||
key.offset: 205,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 211,
|
||||
key.offset: 209,
|
||||
key.length: 8
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 221,
|
||||
key.offset: 219,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 230,
|
||||
key.offset: 228,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 237,
|
||||
key.offset: 235,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 241,
|
||||
key.offset: 239,
|
||||
key.length: 12
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 255,
|
||||
key.offset: 253,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 269,
|
||||
key.offset: 267,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 275,
|
||||
key.offset: 273,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 282,
|
||||
key.offset: 280,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 286,
|
||||
key.offset: 284,
|
||||
key.length: 12
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 300,
|
||||
key.offset: 298,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 314,
|
||||
key.offset: 312,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 321,
|
||||
key.offset: 318,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 328,
|
||||
key.offset: 325,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 332,
|
||||
key.offset: 329,
|
||||
key.length: 25
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 359,
|
||||
key.offset: 356,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 365,
|
||||
key.offset: 362,
|
||||
key.length: 3
|
||||
}
|
||||
]
|
||||
@@ -236,59 +233,59 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 48,
|
||||
key.offset: 47,
|
||||
key.length: 5,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 58,
|
||||
key.offset: 57,
|
||||
key.length: 5,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.protocol,
|
||||
key.offset: 93,
|
||||
key.offset: 91,
|
||||
key.length: 9,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.protocol,
|
||||
key.offset: 104,
|
||||
key.offset: 102,
|
||||
key.length: 16,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 152,
|
||||
key.offset: 150,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 187,
|
||||
key.offset: 185,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 221,
|
||||
key.offset: 219,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 255,
|
||||
key.offset: 253,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 300,
|
||||
key.offset: 298,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 359,
|
||||
key.offset: 356,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
}
|
||||
@@ -298,14 +295,14 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.function.free,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "fooSubFunc1(_:)",
|
||||
key.offset: 26,
|
||||
key.offset: 25,
|
||||
key.length: 37,
|
||||
key.typename: "Int32",
|
||||
key.nameoffset: 31,
|
||||
key.nameoffset: 30,
|
||||
key.namelength: 23,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 19,
|
||||
key.offset: 18,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -314,7 +311,7 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "a",
|
||||
key.offset: 43,
|
||||
key.offset: 42,
|
||||
key.length: 10,
|
||||
key.typename: "Int32"
|
||||
}
|
||||
@@ -324,11 +321,11 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.struct,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooSubEnum1",
|
||||
key.offset: 72,
|
||||
key.offset: 70,
|
||||
key.length: 157,
|
||||
key.nameoffset: 79,
|
||||
key.nameoffset: 77,
|
||||
key.namelength: 11,
|
||||
key.bodyoffset: 122,
|
||||
key.bodyoffset: 120,
|
||||
key.bodylength: 106,
|
||||
key.inheritedtypes: [
|
||||
{
|
||||
@@ -340,7 +337,7 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
],
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 65,
|
||||
key.offset: 63,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -348,12 +345,12 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.elements: [
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.typeref,
|
||||
key.offset: 93,
|
||||
key.offset: 91,
|
||||
key.length: 9
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.typeref,
|
||||
key.offset: 104,
|
||||
key.offset: 102,
|
||||
key.length: 16
|
||||
}
|
||||
],
|
||||
@@ -362,13 +359,13 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.function.method.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "init(_:)",
|
||||
key.offset: 135,
|
||||
key.offset: 133,
|
||||
key.length: 24,
|
||||
key.nameoffset: 135,
|
||||
key.nameoffset: 133,
|
||||
key.namelength: 24,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 128,
|
||||
key.offset: 126,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -377,7 +374,7 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "rawValue",
|
||||
key.offset: 140,
|
||||
key.offset: 138,
|
||||
key.length: 18,
|
||||
key.typename: "UInt32"
|
||||
}
|
||||
@@ -387,13 +384,13 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.function.method.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "init(rawValue:)",
|
||||
key.offset: 172,
|
||||
key.offset: 170,
|
||||
key.length: 22,
|
||||
key.nameoffset: 172,
|
||||
key.nameoffset: 170,
|
||||
key.namelength: 22,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 165,
|
||||
key.offset: 163,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -402,10 +399,10 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "rawValue",
|
||||
key.offset: 177,
|
||||
key.offset: 175,
|
||||
key.length: 16,
|
||||
key.typename: "UInt32",
|
||||
key.nameoffset: 177,
|
||||
key.nameoffset: 175,
|
||||
key.namelength: 8
|
||||
}
|
||||
]
|
||||
@@ -415,14 +412,14 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.setter_accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "rawValue",
|
||||
key.offset: 207,
|
||||
key.offset: 205,
|
||||
key.length: 20,
|
||||
key.typename: "UInt32",
|
||||
key.nameoffset: 211,
|
||||
key.nameoffset: 209,
|
||||
key.namelength: 8,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 200,
|
||||
key.offset: 198,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -434,16 +431,16 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.var.global,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooSubEnum1X",
|
||||
key.offset: 237,
|
||||
key.offset: 235,
|
||||
key.length: 37,
|
||||
key.typename: "FooSubEnum1",
|
||||
key.nameoffset: 241,
|
||||
key.nameoffset: 239,
|
||||
key.namelength: 12,
|
||||
key.bodyoffset: 268,
|
||||
key.bodyoffset: 266,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 230,
|
||||
key.offset: 228,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -453,16 +450,16 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.var.global,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooSubEnum1Y",
|
||||
key.offset: 282,
|
||||
key.offset: 280,
|
||||
key.length: 37,
|
||||
key.typename: "FooSubEnum1",
|
||||
key.nameoffset: 286,
|
||||
key.nameoffset: 284,
|
||||
key.namelength: 12,
|
||||
key.bodyoffset: 313,
|
||||
key.bodyoffset: 311,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 275,
|
||||
key.offset: 273,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -472,16 +469,16 @@ public var FooSubUnnamedEnumeratorA1: Int { get }
|
||||
key.kind: source.lang.swift.decl.var.global,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "FooSubUnnamedEnumeratorA1",
|
||||
key.offset: 328,
|
||||
key.offset: 325,
|
||||
key.length: 42,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 332,
|
||||
key.nameoffset: 329,
|
||||
key.namelength: 25,
|
||||
key.bodyoffset: 364,
|
||||
key.bodyoffset: 361,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 321,
|
||||
key.offset: 318,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
|
||||
public struct NUPixelSize {
|
||||
|
||||
public init()
|
||||
|
||||
public init(width: Int, height: Int)
|
||||
|
||||
|
||||
/** Some clang-style comments */
|
||||
public var width: Int
|
||||
|
||||
|
||||
/**
|
||||
* Some clang-style comments
|
||||
*/
|
||||
@@ -17,57 +18,57 @@ public struct NUPixelSize {
|
||||
[
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 1,
|
||||
key.offset: 0,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 8,
|
||||
key.offset: 7,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 15,
|
||||
key.offset: 14,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 34,
|
||||
key.offset: 33,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 41,
|
||||
key.offset: 40,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 53,
|
||||
key.offset: 52,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 60,
|
||||
key.offset: 59,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 65,
|
||||
key.offset: 64,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 72,
|
||||
key.offset: 71,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 77,
|
||||
key.offset: 76,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 85,
|
||||
key.offset: 84,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
@@ -97,40 +98,40 @@ public struct NUPixelSize {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.doccomment,
|
||||
key.offset: 159,
|
||||
key.offset: 160,
|
||||
key.length: 44
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 208,
|
||||
key.offset: 209,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 215,
|
||||
key.offset: 216,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 219,
|
||||
key.offset: 220,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 227,
|
||||
key.offset: 228,
|
||||
key.length: 3
|
||||
}
|
||||
]
|
||||
[
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 72,
|
||||
key.offset: 71,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 85,
|
||||
key.offset: 84,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
},
|
||||
@@ -142,7 +143,7 @@ public struct NUPixelSize {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 227,
|
||||
key.offset: 228,
|
||||
key.length: 3,
|
||||
key.is_system: 1
|
||||
}
|
||||
@@ -152,15 +153,15 @@ public struct NUPixelSize {
|
||||
key.kind: source.lang.swift.decl.struct,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "NUPixelSize",
|
||||
key.offset: 8,
|
||||
key.length: 224,
|
||||
key.nameoffset: 15,
|
||||
key.offset: 7,
|
||||
key.length: 226,
|
||||
key.nameoffset: 14,
|
||||
key.namelength: 11,
|
||||
key.bodyoffset: 28,
|
||||
key.bodylength: 203,
|
||||
key.bodyoffset: 27,
|
||||
key.bodylength: 205,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 1,
|
||||
key.offset: 0,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -170,13 +171,13 @@ public struct NUPixelSize {
|
||||
key.kind: source.lang.swift.decl.function.method.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "init()",
|
||||
key.offset: 41,
|
||||
key.offset: 40,
|
||||
key.length: 6,
|
||||
key.nameoffset: 41,
|
||||
key.nameoffset: 40,
|
||||
key.namelength: 6,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 34,
|
||||
key.offset: 33,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -186,13 +187,13 @@ public struct NUPixelSize {
|
||||
key.kind: source.lang.swift.decl.function.method.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "init(width:height:)",
|
||||
key.offset: 60,
|
||||
key.offset: 59,
|
||||
key.length: 29,
|
||||
key.nameoffset: 60,
|
||||
key.nameoffset: 59,
|
||||
key.namelength: 29,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 53,
|
||||
key.offset: 52,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -201,19 +202,19 @@ public struct NUPixelSize {
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "width",
|
||||
key.offset: 65,
|
||||
key.offset: 64,
|
||||
key.length: 10,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 65,
|
||||
key.nameoffset: 64,
|
||||
key.namelength: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "height",
|
||||
key.offset: 77,
|
||||
key.offset: 76,
|
||||
key.length: 11,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 77,
|
||||
key.nameoffset: 76,
|
||||
key.namelength: 6
|
||||
}
|
||||
]
|
||||
@@ -243,16 +244,16 @@ public struct NUPixelSize {
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.setter_accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "height",
|
||||
key.offset: 215,
|
||||
key.offset: 216,
|
||||
key.length: 15,
|
||||
key.typename: "Int",
|
||||
key.nameoffset: 219,
|
||||
key.nameoffset: 220,
|
||||
key.namelength: 6,
|
||||
key.docoffset: 159,
|
||||
key.docoffset: 160,
|
||||
key.doclength: 44,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 208,
|
||||
key.offset: 209,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
|
||||
public enum SKFuelKind : UInt32 {
|
||||
|
||||
|
||||
case H2 = 0
|
||||
|
||||
case CH4 = 1
|
||||
@@ -18,151 +16,151 @@ extension SKFuelKind {
|
||||
[
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 1,
|
||||
key.offset: 0,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 8,
|
||||
key.offset: 7,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 13,
|
||||
key.offset: 12,
|
||||
key.length: 10
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 26,
|
||||
key.offset: 25,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 45,
|
||||
key.offset: 39,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 50,
|
||||
key.offset: 44,
|
||||
key.length: 2
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.number,
|
||||
key.offset: 55,
|
||||
key.offset: 49,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 62,
|
||||
key.offset: 56,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 67,
|
||||
key.offset: 61,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.number,
|
||||
key.offset: 73,
|
||||
key.offset: 67,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 80,
|
||||
key.offset: 74,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 85,
|
||||
key.offset: 79,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.number,
|
||||
key.offset: 94,
|
||||
key.offset: 88,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 98,
|
||||
key.offset: 92,
|
||||
key.length: 9
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 108,
|
||||
key.offset: 102,
|
||||
key.length: 10
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 126,
|
||||
key.offset: 120,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 133,
|
||||
key.offset: 127,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 137,
|
||||
key.offset: 131,
|
||||
key.length: 11
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 150,
|
||||
key.offset: 144,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 159,
|
||||
key.offset: 153,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 170,
|
||||
key.offset: 164,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 177,
|
||||
key.offset: 171,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 181,
|
||||
key.offset: 175,
|
||||
key.length: 14
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 197,
|
||||
key.offset: 191,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 206,
|
||||
key.offset: 200,
|
||||
key.length: 3
|
||||
}
|
||||
]
|
||||
[
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 26,
|
||||
key.offset: 25,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.enum,
|
||||
key.offset: 108,
|
||||
key.offset: 102,
|
||||
key.length: 10
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 150,
|
||||
key.offset: 144,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 197,
|
||||
key.offset: 191,
|
||||
key.length: 6,
|
||||
key.is_system: 1
|
||||
}
|
||||
@@ -172,12 +170,12 @@ extension SKFuelKind {
|
||||
key.kind: source.lang.swift.decl.enum,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "SKFuelKind",
|
||||
key.offset: 8,
|
||||
key.length: 89,
|
||||
key.nameoffset: 13,
|
||||
key.offset: 7,
|
||||
key.length: 84,
|
||||
key.nameoffset: 12,
|
||||
key.namelength: 10,
|
||||
key.bodyoffset: 34,
|
||||
key.bodylength: 62,
|
||||
key.bodyoffset: 33,
|
||||
key.bodylength: 57,
|
||||
key.inheritedtypes: [
|
||||
{
|
||||
key.name: "UInt32"
|
||||
@@ -185,7 +183,7 @@ extension SKFuelKind {
|
||||
],
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 1,
|
||||
key.offset: 0,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -193,28 +191,28 @@ extension SKFuelKind {
|
||||
key.elements: [
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.typeref,
|
||||
key.offset: 26,
|
||||
key.offset: 25,
|
||||
key.length: 6
|
||||
}
|
||||
],
|
||||
key.substructure: [
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumcase,
|
||||
key.offset: 45,
|
||||
key.offset: 39,
|
||||
key.length: 11,
|
||||
key.substructure: [
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumelement,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "H2",
|
||||
key.offset: 50,
|
||||
key.offset: 44,
|
||||
key.length: 6,
|
||||
key.nameoffset: 50,
|
||||
key.nameoffset: 44,
|
||||
key.namelength: 2,
|
||||
key.elements: [
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.init_expr,
|
||||
key.offset: 55,
|
||||
key.offset: 49,
|
||||
key.length: 1
|
||||
}
|
||||
]
|
||||
@@ -223,21 +221,21 @@ extension SKFuelKind {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumcase,
|
||||
key.offset: 62,
|
||||
key.offset: 56,
|
||||
key.length: 12,
|
||||
key.substructure: [
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumelement,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "CH4",
|
||||
key.offset: 67,
|
||||
key.offset: 61,
|
||||
key.length: 7,
|
||||
key.nameoffset: 67,
|
||||
key.nameoffset: 61,
|
||||
key.namelength: 3,
|
||||
key.elements: [
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.init_expr,
|
||||
key.offset: 73,
|
||||
key.offset: 67,
|
||||
key.length: 1
|
||||
}
|
||||
]
|
||||
@@ -246,21 +244,21 @@ extension SKFuelKind {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumcase,
|
||||
key.offset: 80,
|
||||
key.offset: 74,
|
||||
key.length: 15,
|
||||
key.substructure: [
|
||||
{
|
||||
key.kind: source.lang.swift.decl.enumelement,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "C12H26",
|
||||
key.offset: 85,
|
||||
key.offset: 79,
|
||||
key.length: 10,
|
||||
key.nameoffset: 85,
|
||||
key.nameoffset: 79,
|
||||
key.namelength: 6,
|
||||
key.elements: [
|
||||
{
|
||||
key.kind: source.lang.swift.structure.elem.init_expr,
|
||||
key.offset: 94,
|
||||
key.offset: 88,
|
||||
key.length: 1
|
||||
}
|
||||
]
|
||||
@@ -272,27 +270,27 @@ extension SKFuelKind {
|
||||
{
|
||||
key.kind: source.lang.swift.decl.extension,
|
||||
key.name: "SKFuelKind",
|
||||
key.offset: 98,
|
||||
key.offset: 92,
|
||||
key.length: 115,
|
||||
key.nameoffset: 108,
|
||||
key.nameoffset: 102,
|
||||
key.namelength: 10,
|
||||
key.bodyoffset: 120,
|
||||
key.bodyoffset: 114,
|
||||
key.bodylength: 92,
|
||||
key.substructure: [
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "isCryogenic",
|
||||
key.offset: 133,
|
||||
key.offset: 127,
|
||||
key.length: 31,
|
||||
key.typename: "UInt32",
|
||||
key.nameoffset: 137,
|
||||
key.nameoffset: 131,
|
||||
key.namelength: 11,
|
||||
key.bodyoffset: 158,
|
||||
key.bodyoffset: 152,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 126,
|
||||
key.offset: 120,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
@@ -302,16 +300,16 @@ extension SKFuelKind {
|
||||
key.kind: source.lang.swift.decl.var.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "isNotCryogenic",
|
||||
key.offset: 177,
|
||||
key.offset: 171,
|
||||
key.length: 34,
|
||||
key.typename: "UInt32",
|
||||
key.nameoffset: 181,
|
||||
key.nameoffset: 175,
|
||||
key.namelength: 14,
|
||||
key.bodyoffset: 205,
|
||||
key.bodyoffset: 199,
|
||||
key.bodylength: 5,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 170,
|
||||
key.offset: 164,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
public func doSomethingInHead(_ arg: Int32)
|
||||
|
||||
open class BaseInHead {
|
||||
|
||||
open func doIt(_ arg: Int32)
|
||||
@@ -10,9 +9,6 @@ open class BaseInHead {
|
||||
/// Awesome name.
|
||||
open class SameName {
|
||||
}
|
||||
|
||||
// random comment.
|
||||
|
||||
public protocol SameNameProtocol {
|
||||
}
|
||||
|
||||
@@ -49,97 +45,92 @@ public protocol SameNameProtocol {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 45,
|
||||
key.offset: 44,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 50,
|
||||
key.offset: 49,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 56,
|
||||
key.offset: 55,
|
||||
key.length: 10
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 74,
|
||||
key.offset: 73,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 79,
|
||||
key.offset: 78,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 84,
|
||||
key.offset: 83,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 89,
|
||||
key.offset: 88,
|
||||
key.length: 1
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 91,
|
||||
key.offset: 90,
|
||||
key.length: 3
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.typeidentifier,
|
||||
key.offset: 96,
|
||||
key.offset: 95,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.doccomment,
|
||||
key.offset: 106,
|
||||
key.offset: 105,
|
||||
key.length: 18
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.doccomment,
|
||||
key.offset: 124,
|
||||
key.offset: 123,
|
||||
key.length: 26
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.doccomment,
|
||||
key.offset: 150,
|
||||
key.offset: 149,
|
||||
key.length: 18
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 168,
|
||||
key.offset: 167,
|
||||
key.length: 4
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 173,
|
||||
key.offset: 172,
|
||||
key.length: 5
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 179,
|
||||
key.offset: 178,
|
||||
key.length: 8
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.comment,
|
||||
key.offset: 193,
|
||||
key.length: 19
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.attribute.builtin,
|
||||
key.offset: 213,
|
||||
key.offset: 191,
|
||||
key.length: 6
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.keyword,
|
||||
key.offset: 220,
|
||||
key.offset: 198,
|
||||
key.length: 8
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.syntaxtype.identifier,
|
||||
key.offset: 229,
|
||||
key.offset: 207,
|
||||
key.length: 16
|
||||
}
|
||||
]
|
||||
@@ -152,7 +143,7 @@ public protocol SameNameProtocol {
|
||||
},
|
||||
{
|
||||
key.kind: source.lang.swift.ref.struct,
|
||||
key.offset: 96,
|
||||
key.offset: 95,
|
||||
key.length: 5,
|
||||
key.is_system: 1
|
||||
}
|
||||
@@ -187,15 +178,15 @@ public protocol SameNameProtocol {
|
||||
key.kind: source.lang.swift.decl.class,
|
||||
key.accessibility: source.lang.swift.accessibility.open,
|
||||
key.name: "BaseInHead",
|
||||
key.offset: 50,
|
||||
key.offset: 49,
|
||||
key.length: 54,
|
||||
key.nameoffset: 56,
|
||||
key.nameoffset: 55,
|
||||
key.namelength: 10,
|
||||
key.bodyoffset: 68,
|
||||
key.bodyoffset: 67,
|
||||
key.bodylength: 35,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 45,
|
||||
key.offset: 44,
|
||||
key.length: 4,
|
||||
key.attribute: source.decl.attribute.open
|
||||
}
|
||||
@@ -205,13 +196,13 @@ public protocol SameNameProtocol {
|
||||
key.kind: source.lang.swift.decl.function.method.instance,
|
||||
key.accessibility: source.lang.swift.accessibility.open,
|
||||
key.name: "doIt(_:)",
|
||||
key.offset: 79,
|
||||
key.offset: 78,
|
||||
key.length: 23,
|
||||
key.nameoffset: 84,
|
||||
key.nameoffset: 83,
|
||||
key.namelength: 18,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 74,
|
||||
key.offset: 73,
|
||||
key.length: 4,
|
||||
key.attribute: source.decl.attribute.open
|
||||
}
|
||||
@@ -220,7 +211,7 @@ public protocol SameNameProtocol {
|
||||
{
|
||||
key.kind: source.lang.swift.decl.var.parameter,
|
||||
key.name: "arg",
|
||||
key.offset: 89,
|
||||
key.offset: 88,
|
||||
key.length: 12,
|
||||
key.typename: "Int32"
|
||||
}
|
||||
@@ -232,17 +223,17 @@ public protocol SameNameProtocol {
|
||||
key.kind: source.lang.swift.decl.class,
|
||||
key.accessibility: source.lang.swift.accessibility.open,
|
||||
key.name: "SameName",
|
||||
key.offset: 173,
|
||||
key.offset: 172,
|
||||
key.length: 18,
|
||||
key.nameoffset: 179,
|
||||
key.nameoffset: 178,
|
||||
key.namelength: 8,
|
||||
key.bodyoffset: 189,
|
||||
key.bodyoffset: 188,
|
||||
key.bodylength: 1,
|
||||
key.docoffset: 106,
|
||||
key.docoffset: 105,
|
||||
key.doclength: 62,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 168,
|
||||
key.offset: 167,
|
||||
key.length: 4,
|
||||
key.attribute: source.decl.attribute.open
|
||||
}
|
||||
@@ -252,15 +243,15 @@ public protocol SameNameProtocol {
|
||||
key.kind: source.lang.swift.decl.protocol,
|
||||
key.accessibility: source.lang.swift.accessibility.public,
|
||||
key.name: "SameNameProtocol",
|
||||
key.offset: 220,
|
||||
key.offset: 198,
|
||||
key.length: 29,
|
||||
key.nameoffset: 229,
|
||||
key.nameoffset: 207,
|
||||
key.namelength: 16,
|
||||
key.bodyoffset: 247,
|
||||
key.bodyoffset: 225,
|
||||
key.bodylength: 1,
|
||||
key.attributes: [
|
||||
{
|
||||
key.offset: 213,
|
||||
key.offset: 191,
|
||||
key.length: 6,
|
||||
key.attribute: source.decl.attribute.public
|
||||
}
|
||||
|
||||
@@ -698,12 +698,6 @@ SkipDocumentationComments("skip-print-doc-comments",
|
||||
llvm::cl::cat(Category),
|
||||
llvm::cl::init(false));
|
||||
|
||||
static llvm::cl::opt<bool>
|
||||
PrintRegularComments("print-regular-comments",
|
||||
llvm::cl::desc("Print regular comments from clang module headers"),
|
||||
llvm::cl::cat(Category),
|
||||
llvm::cl::init(false));
|
||||
|
||||
static llvm::cl::opt<bool>
|
||||
PrintOriginalSourceText("print-original-source",
|
||||
llvm::cl::desc("print the original source text for applicable declarations"),
|
||||
@@ -4599,7 +4593,6 @@ int main(int argc, char *argv[]) {
|
||||
PrintOpts.PrintAccess = options::PrintAccess;
|
||||
PrintOpts.AccessFilter = options::AccessFilter;
|
||||
PrintOpts.PrintDocumentationComments = !options::SkipDocumentationComments;
|
||||
PrintOpts.PrintRegularClangComments = options::PrintRegularComments;
|
||||
PrintOpts.SkipPrivateStdlibDecls = options::SkipPrivateStdlibDecls;
|
||||
PrintOpts.SkipUnsafeCXXMethods = options::SkipUnsafeCXXMethods;
|
||||
PrintOpts.SkipUnavailable = options::SkipUnavailable;
|
||||
|
||||
Reference in New Issue
Block a user