Commit Graph

133 Commits

Author SHA1 Message Date
Dave Abrahams
65a7108ccf [proposal] In-place operations update
Changes from previous version:

* Support classes
* Support protocols and generics
* Make the obvious extensions to cover assignment operator pairs

Swift SVN r23954
2014-12-16 06:51:44 +00:00
Joe Groff
2e5faa7c79 Ramble about KVO2-related stuff
Swift SVN r23891
2014-12-12 19:19:30 +00:00
Dave Abrahams
d63e8e02d4 [proposal] Inplace.rst fixup
s/let/var/

Swift SVN r23617
2014-12-02 18:10:02 +00:00
Dave Abrahams
747c279bb3 [proposal] Rewrite Inplace.rst
The basic proposal is newly-relevant; this is a first revision to
prepare it for discussion.

Swift SVN r23614
2014-12-02 17:34:58 +00:00
John McCall
3cd28b9e62 Document the rules for formal accesses to ? and ! l-values.
! is obvious, but ? raises a more fundamental difficulty.

Swift SVN r23491
2014-11-20 23:01:13 +00:00
Dave Abrahams
e455dec9fa Accessors: various ReST fixups
Swift SVN r23349
2014-11-15 02:13:11 +00:00
Andrew Trick
70fe4a3065 Accessors.rst:879: ERROR: Unexpected indentation.
Swift SVN r23347
2014-11-15 01:10:28 +00:00
John McCall
26b7dd190a Edits to the accessor proposal in response to Dave's feedback.
The main change here is a total restructuring of the
unspecified behavior rule.  (Note that the rule has not
changed; I'm simply specifying it differently, hopefully
better.)

I still owe some examples for the unspecified behavior rule.

Swift SVN r23344
2014-11-15 00:50:37 +00:00
Andrew Trick
06bfed16f6 Make Accessors doc an orphan so it doesn't break my build.
Swift SVN r23343
2014-11-15 00:37:36 +00:00
John McCall
ca59995032 The most recent accessors proposal, with a few editorial
changes that Dave pointed out.

Swift SVN r23338
2014-11-14 22:32:46 +00:00
Dave Abrahams
8c7a971b4b Correct a doc edit-o
Swift SVN r20499
2014-07-24 17:20:54 +00:00
Dave Abrahams
d00e888d95 [stdlib] Rename reinterpretCast => unsafeBitCast
Also give unsafeBitCast an explicit type parameter.  So

  let x: T = reinterpretCast(y)

becomes

  let x = unsafeBitCast(y, T.self)

Swift SVN r20487
2014-07-24 13:17:36 +00:00
Dave Abrahams
d44a953d1d [docs] comment out nonsens ReST, which breaks the build
Swift SVN r20391
2014-07-23 12:45:20 +00:00
Dmitri Hrybenko
5a5525d005 Remove some temporary files
Swift SVN r20383
2014-07-23 08:41:45 +00:00
John McCall
1ae1f750d0 Move most type metadata lookups into their own readnone
functions, and make those functions memoize the result.

This memoization can be both threadsafe and extremely
fast because of the memory ordering rules of the platforms
we're targeting: x86 is very permissive, and ARM has a
very convenient address-dependence rule which happens to
exactly match the semantics we need.

Swift SVN r20381
2014-07-23 07:38:26 +00:00
Dave Abrahams
1438d617cd [stdlib] Rename ConstUnsafePointer=>UnsafePointer
Swift SVN r20318
2014-07-22 17:10:54 +00:00
Dave Abrahams
21669b3aee [stdlib] Add "Mutable" to [Autoreleasing]UnsafePointer
UnsafePointer becomes UnsafeMutablePointer
AutoreleasingUnsafePointer becomes AutoreleasingUnsafeMutablePointer

Swift SVN r20316
2014-07-22 16:56:23 +00:00
Joe Groff
c719314c4b Update C pointer interop spec with the state of the implementation.
UTF16 and 32 string interop is to-be-implemented, and ConstUnsafePointer<Void> parameters have some type-checking issues with literal arguments.

Swift SVN r19943
2014-07-14 20:29:35 +00:00
Joe Groff
ed35c76fe4 Remove discussion of type sugar from C pointer interop docs.
Swift SVN r19710
2014-07-08 23:14:24 +00:00
Jordan Rose
38d3a9c9cf Move Access Control plan of record to docs/.
Also, sort the table of contents alphabetically...except that "Various
Design Decisions" and LangRefNew stay at the top.

Swift SVN r19445
2014-07-02 01:07:26 +00:00
Jordan Rose
0e6999c2b1 AccessControl: change "generic parameters" to "generic argument types".
As Doug noted, generic parameters don't have accessibility independent from
the generic type. It's the actual argument types (when forming a bound type)
that may be more limited.

Swift SVN r18966
2014-06-17 23:39:29 +00:00
Jordan Rose
a3005114bd Update access control proposal based on today's discussion.
Also add a section on "Non-Goals: 'class-only' and 'protected'".

Swift SVN r18965
2014-06-17 23:23:50 +00:00
Jordan Rose
2913abdfb3 Commit v1 access control proposal, as proposed on 2014-06-13.
This overwrites the very old access control proposal from last year.
It can be recovered from version control if needed.

Swift SVN r18964
2014-06-17 23:23:41 +00:00
Joe Groff
f6ef7808a7 Add note to interop model proposal about interop with String.
Swift SVN r18854
2014-06-13 04:20:34 +00:00
Joe Groff
4caeb49449 Missed a heading.
Swift SVN r17733
2014-05-08 23:27:42 +00:00
Joe Groff
fa74bfc367 Add a proposal for the C pointer language model.
Swift SVN r17732
2014-05-08 23:26:26 +00:00
Ted Kremenek
4e70269c53 More renaming 'unchecked optional' to 'implicitly unwrapped optional'.
Swift SVN r17236
2014-05-02 06:22:01 +00:00
Dave Abrahams
8e2e7e9bfc [stdlib] Hide all BuiltinXXXConvertible's
During String API review we decided these weren't for user consumption.

Swift SVN r17167
2014-05-01 19:35:50 +00:00
Ted Kremenek
6caf910d32 Implement new syntactic sugar for UncheckedOptional<T>.
This leaves in the existing syntax for @unchecked T?.  That will
be addressed in later patches.

There's still a mysterious case where some of the SIL output
includes UncheckedOptional<T> and some places T!.

Moreover, this doesn't handle SourceKit's behavior for printing
for overrides.  This just handles parsing the 'T!' syntax.

Swift SVN r16945
2014-04-27 21:59:29 +00:00
Chris Lattner
61de944e51 typographical changes.
Swift SVN r15721
2014-04-01 05:00:37 +00:00
Joe Groff
2c804dabe2 Update failable initializers proposal.
Use the ``init() -> T?`` return type syntax we introduced for whole-object initializers, and limit the scope of initializer failure to @objc initializers; we don't need to be able to initiate initializer failure from Swift for 1.0.

Swift SVN r15703
2014-03-31 23:06:48 +00:00
Joe Groff
ad1297a094 [sooner] Save some thoughts about generators.
Swift SVN r15624
2014-03-29 17:30:04 +00:00
Doug Gregor
2477afe657 Rework the section on "dropping prepositions" to be more specific
Swift SVN r15464
2014-03-25 20:26:13 +00:00
Doug Gregor
2c94b6a259 Make it clearer that we're planning to drop "with" and "for".
Swift SVN r15463
2014-03-25 16:43:17 +00:00
Doug Gregor
751d5bd0f1 Reword and clarify an awful paragraph.
Swift SVN r15459
2014-03-25 16:28:30 +00:00
Doug Gregor
0e4044041f Take Jordan's suggestion to rename @selector(...) to @objc(...).
Swift SVN r15426
2014-03-24 22:49:55 +00:00
Doug Gregor
c5ffbcacc7 Fix a few typos
Swift SVN r15425
2014-03-24 22:47:51 +00:00
Doug Gregor
059a549e84 Formatting fixes.
Swift SVN r15424
2014-03-24 22:32:49 +00:00
Doug Gregor
ee599c0bdd Objective-C and Smalltalk don't have keyword arguments per se
Swift SVN r15423
2014-03-24 22:32:47 +00:00
Doug Gregor
a586b6d31d Unified function syntax: switch to space-separated API name / parameter name.
Swift SVN r15420
2014-03-24 17:55:22 +00:00
Doug Gregor
c3183aec70 Remove "by" as a dropped preposition (it's still a preposition).
In Cocoa selectors, "by" is often used before an action, i.e.,

  URLByAppendingPathExtension:
  characterRangeByExtendingPosition:inDirection:
  dateByAddingComponents:toDate:options:

Dropping the preposition doesn't make the argument name better.

Swift SVN r15417
2014-03-24 16:38:40 +00:00
Doug Gregor
e4260da123 Remove useless "dropped?" entries from the table.
Swift SVN r15415
2014-03-24 16:06:20 +00:00
Doug Gregor
41ca928cfc Selector splitting: kick "over", "per", and "without" off the island.
These prepositions are used in Cocoa, but result in crummy or useless splits.

Swift SVN r15414
2014-03-24 16:04:35 +00:00
Doug Gregor
e85e10690a Un-fuse two lines
Swift SVN r15409
2014-03-24 15:30:02 +00:00
Doug Gregor
4e0f866a4b Add a section on dropping leading prepositions "by", "for", "with".
Swift SVN r15408
2014-03-24 15:27:16 +00:00
Doug Gregor
b4e859b3c0 Fix typo "migreate"
Swift SVN r15407
2014-03-24 14:36:36 +00:00
Doug Gregor
6895597eba Re-order comment about in-compiler selector->method name mappings.
Swift SVN r15406
2014-03-24 14:35:17 +00:00
Doug Gregor
590aae3f0d Note that we need a mapping in the compiler from selectors to method names.
Swift SVN r15405
2014-03-24 14:31:06 +00:00
Doug Gregor
f78cf35e37 Unified function syntax proposal: reflow to split paragraphs for diff'ability. NFC
Swift SVN r15404
2014-03-24 14:27:43 +00:00
Doug Gregor
c4b0a7daee Unified function syntax: distinguish "argument name" from "parameter name".
Swift SVN r15377
2014-03-23 05:19:11 +00:00