Commit Graph

2350 Commits

Author SHA1 Message Date
Marcelo Fabri
40b054b642 [SourceKit] Add local variables to structure (SR-5057) (#11431) 2017-08-11 13:43:05 -07:00
Rintaro Ishizaki
eb6914ccfc Merge pull request #11346 from rintaro/rip-cfor
Eliminate C-style ForStmt
2017-08-08 07:49:42 -07:00
Rintaro Ishizaki
b754b9e9b6 [IDE] Remove support for C-style ForStmt 2017-08-04 23:27:22 +09:00
swift-ci
747f79ca3b Merge remote-tracking branch 'origin/master' into master-next 2017-08-02 13:49:09 -07:00
Marcelo Fabri
d16cce3a94 [SourceKit] Add documentation range in structure (SR-2487) (#11264) 2017-08-02 13:39:49 -07:00
swift-ci
eb00130f0d Merge remote-tracking branch 'origin/master' into master-next 2017-08-01 21:28:52 -07:00
Harlan
4ff07077bc Rename DEPENDS to LINK_LIBS throughout SourceKit (#11228)
Currently, SourceKit's CMake functions all use DEPENDS to specify
libraries the targets will link with. This is confusing as it doesn't
behave the same way that add_swift behaves, and implies that
dependencies are created when there aren't.
2017-08-01 21:25:19 -07:00
swift-ci
d189132667 Merge remote-tracking branch 'origin/master' into master-next 2017-08-01 09:28:54 -07:00
Harlan Haskins
dc4bc169a5 Make SourceKitSupport depend on swift-syntax-generated-headers 2017-08-01 09:17:35 -07:00
swift-ci
9e7004b45a Merge remote-tracking branch 'origin/master' into master-next 2017-07-31 16:49:09 -07:00
Marcelo Fabri
c4dad0c321 [SourceKit] Add subscript to doc structure (SR-5035) 2017-08-01 00:00:20 +02:00
swift-ci
261bc2b849 Merge remote-tracking branch 'origin/master' into master-next 2017-07-31 14:29:37 -07:00
Marcelo Fabri
8a8f7c827e [SourceKit] Add accessibility in extension structure (SR-4823) (#11260) 2017-07-31 14:14:25 -07:00
Chris Bieneman
9c35042ae6 Merge remote-tracking branch 'origin/master' into master-next 2017-07-28 09:51:36 -07:00
Harlan
4b83c16c07 Make SourceKitSwiftLang depend on swift-syntax-generated-headers (#11226) 2017-07-27 13:24:55 -07:00
Chris B
762841ffa8 Merge pull request #11177 from llvm-beanz/swift-cmake-cross-compile
Support CMake's built-in cross compilation mechanisms, and LLVM's native tools configuration.
2017-07-26 15:44:59 -07:00
swift-ci
dec8050c1a Merge remote-tracking branch 'origin/master' into master-next 2017-07-26 10:09:14 -07:00
John Fairhurst
1f94eca80c [SourceKit] Add typealias to doc structure (#11143)
From https://bugs.swift.org/browse/SR-4828
2017-07-26 09:59:06 -07:00
swift-ci
0ce8483aa6 Merge remote-tracking branch 'origin/master' into master-next 2017-07-25 18:48:50 -07:00
Harlan
a5098e6b69 Generate libSyntax API (#10926)
* Generate libSyntax API

This patch removes the hand-rolled libSyntax API and replaces it with an
API that's entirely automatically generated. This means the API is
guaranteed to be internally stylistically and functionally consistent.
2017-07-25 18:19:58 -07:00
Chris Bieneman
3003bf6f9e Don't override CMAKE_* variables if CMAKE_CROSSCOMPILING is set
This patch allows Swift to build correctly when using CMake's cross compiling facilities instead of hacking around them.
2017-07-25 13:49:02 -07:00
swift-ci
238e75bebd Merge remote-tracking branch 'origin/master' into master-next 2017-07-21 18:29:06 -07:00
Xi Ge
7595ed353e [RangeInfo] Address Argyrios' code review comments. NFC (#11114) 2017-07-21 18:10:52 -07:00
swift-ci
bc13c03bfb Merge remote-tracking branch 'origin/master' into master-next 2017-07-21 16:29:01 -07:00
Xi Ge
ac348b597a [RangeInfo] Using the underlying token array reference to represent the content of a range under selection. (#11106)
Comparing to CharSourceRange, token stream is a better way because we can preserve comment information at the start of the range.

Needed for rdar://33437855
2017-07-21 16:19:25 -07:00
swift-ci
0535f36f1f Merge remote-tracking branch 'origin/master' into master-next 2017-07-19 17:08:59 -07:00
Ben Langmuir
93d22c9ff0 [code-completion] Add a new custom completion context for a for-each sequence
For normal completions it behaves the same as PostfixExprBeginning, but
it provides a hook for clients to provide a custom completion for this
position.  For example, you might want to a x ..< y snippet in this
position.

rdar://problem/29910383
2017-07-19 13:29:36 -07:00
swift-ci
f79b640686 Merge remote-tracking branch 'origin/master' into master-next 2017-07-19 13:09:13 -07:00
Ben Langmuir
0258839815 [code-completion] Add leading-dot completion for enums
When using completion options that will allow the lone "." completion,
provide that result when in contexts that expect an enum type.  Note:
this is a crappy approximationg for whether the type can have "implicit
member expression" syntax, since uninhabited enums should not support
it, and many non-enum types should.  However, it is currently expensive
to compute the accurate answer and this approximation is good enough for
some clients.

rdar://problem/31260505
2017-07-19 11:34:01 -07:00
swift-ci
30a7bd1844 Merge remote-tracking branch 'origin/master' into master-next 2017-07-19 01:28:52 -07:00
Slava Pestov
fb9d410350 AST: Rename UnqualifiedLookupResult => LookupResultEntry
There's a similar LookupResult::Result type in Sema, and I'd like
to combine the two.
2017-07-18 22:09:02 -07:00
swift-ci
9447a6280b Merge remote-tracking branch 'origin/master' into master-next 2017-07-17 12:08:51 -07:00
Jordan Rose
b4759bc8e2 [Parse] Split ParseSIL out into its own library.
...finally breaking the dependency of Parse on Sema.

There are still some unfortunate dependencies here -- Xi's working on
getting /AST/ not dependent on Sema -- but this is a step forward.

It is a little strange that parseIntoSourceFile is in ParseSIL, and
therefore that that's still a dependency for anyone trying to, well,
parse. However, nearly all clients that parse want to type-check as
well, and that requires Sema, Serialization, and the ClangImporter...
and Serialization and SIL currently require each other as well
(another circular dependency). So it's not actively causing us trouble
right now.
2017-07-17 12:18:41 -06:00
swift-ci
ccfeac871a Merge remote-tracking branch 'origin/master' into master-next 2017-07-14 20:08:52 -07:00
Xi Ge
0bba7d900b ASTPrinter: Remove ASTPrinter's dependency on Sema. (#10985) 2017-07-14 20:02:25 -07:00
swift-ci
2d48f73bec Merge remote-tracking branch 'origin/master' into master-next 2017-07-13 18:08:49 -07:00
Nathan Hawes
ecfa9ebfca [interface-gen] Rename AreSwiftArgs -> UsingSwiftArgs throughout 2017-07-13 15:37:17 -07:00
Nathan Hawes
3de0ea7e1b [interface-gen] Support passing Swift compiler arguments for header file interface generation
Resolves rdar://problem/33249361.
2017-07-13 14:21:06 -07:00
swift-ci
c33d8667ae Merge remote-tracking branch 'origin/master' into master-next 2017-07-11 12:49:08 -07:00
Xi Ge
243ec5ac86 Name translation: Allow type name translation when cursor points to constructor call. rdar://33163114 (#10872) 2017-07-11 12:46:52 -07:00
swift-ci
c6e1e9072e Merge remote-tracking branch 'origin/master' into master-next 2017-07-06 11:48:47 -07:00
Argyrios Kyrtzidis
231add1c2e [SourceKit] Ignore the index-store-path flag for the sourcekitd requests
It was active for clang PCH/module creation coming from sourcekitd which was unnecessary index-store data creation.
2017-07-06 11:04:19 -07:00
swift-ci
0e6f07162a Merge remote-tracking branch 'origin/master' into master-next 2017-07-05 13:48:49 -07:00
Xi Ge
22697aa994 [SourceKit] Declaring locally used UIdent static so that we don't need to create them in every request. NFC (#10762)
This addresses @@benlangmuir's code review comments.
2017-07-05 13:44:03 -07:00
Bob Wilson
c00d35f552 Remove some llvm::yaml::SequenceTraits for vectors
After LLVM r306878, these templates do not compile. As far as I can tell,
they are no longer needed.
2017-07-05 11:56:00 -07:00
Greg Parker
7b009eccde Merge remote-tracking branch 'origin/master' into master-next 2017-06-28 15:25:17 -07:00
Xi Ge
b8cf32f1e9 Revert "[syntax-coloring] Rework the syntax map to use offset + length and simplify the delta logic" (#10633)
Resolving rdar://32988175.
2017-06-27 12:28:41 -07:00
Harlan
e89e7f58b2 [Parse] [Syntax] Simplify TupleTypeRepr parsing and add attributes for Syntax (#8298)
* Simplify TupleTypeRepr parsing

This patch introduces a TupleTypeReprElement struct that holds the
locations for all relevant bits of tuple elements. It removes the
NameLoc and UnderscoreLoc arrays from TupleTypeReprElement in favor of
holding each of these on TupleTypeReprElement. These extra bits of info
are required for full-fidelity representation in the Syntax library.

* Remove TupleTypeReprBitfields and move EllipsisLoc out of TrailingObjects

* Update users of TupleTypeRepr

* Don't resize the elts if we're going to push_back

* getType -> getElementType

* Move ellipsis back into TrailingObjects.

* Move NumElements into TupleTypeReprBitfields
2017-06-27 10:54:47 -07:00
Xi Ge
63aeb0123e SourceKit: Refactor Kinds UIDs to ProtocolUIDs.def. (#10604)
"Kind" is a frequently appearing concept in SourceKitD. This patch
refactors the definitions of these "Kinds" and their associated values
 into the single protocol file. Ideally, we should structurally define Kinds instead of this
flat list.
2017-06-27 10:51:48 -07:00
Xi Ge
46b0405a90 SourceKit: Reduce the duplication of key definitions. NFC (#10550)
We should have a single and unambiguous place to add new keys and request IDs to Sourcekitd.
2017-06-23 17:08:15 -07:00