[swift-evolution] [Discussion] Modernizing Attribute Case and Attribute Argument Naming
Erica Sadun
erica at ericasadun.com
Wed Feb 17 12:29:13 CST 2016
Michael,
mutableVariant is an argument label, not an attribute name:
@warn_unused_result(message: "message", mutable_variant: "doThisThingInPlace")
becomes
@warnunusedresult(message: "message", mutableVariant: "doThisThingInPlace")
-- E
> On Feb 17, 2016, at 11:26 AM, Michael Wells <michael at michaelwells.com> wrote:
>
> Many thanks for writing this up. One nit-pick is mutableVariant should be mutablevariant.
>
> I’m so happy that there are folks out there that care about these things. :)
>
> -mw
>
>> On Feb 17, 2016, at 10:18 AM, Erica Sadun via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>
>> For your consideration: Attribute Ophidiophobia. Feedback and suggestions welcome. -- Erica
>>
>> Modernizing Attribute Case and Attribute Argument Naming
>>
>> Proposal: TBD
>> Author(s): Erica Sadun <http://github.com/erica>
>> Status: TBD
>> Review manager: TBD
>>
>> <https://gist.github.com/erica/29c1a7fb7f49324d572f#introduction>Introduction
>>
>> Two isolated instances of snake case remain in the Swift attribute grammar. This proposal updates those elements to bring them into compliance with modern Swift language standards.
>>
>> The Swift-Evolution discussion of this topic took place in the "[Discussion] Modernizing Attribute Case and Attribute Argument Naming" thread. Hat tip to Michael Wells
>>
>>
>> <https://gist.github.com/erica/29c1a7fb7f49324d572f#motivation-and-detail-design>Motivation and Detail Design
>>
>> Parts of the Swift attribute grammar retain lower snake case patterns that no longer match modern conventions:
>>
>> The warn_unused_result attribute should use lowercase and be renamed warnunusedresult. The lower case pattern matches other compound attribute examples: autoclosure, objc, noescape, nonobjc, and noreturn.
>> The mutable_variant attribute argument should use lower camel case as is standard for native Swift argument labels and be renamed to mutableVariant.
>> Some non-native Swift attributes use a distinct pattern that does not apply to this proposal, specificallyUIApplicationMain, NSManaged, NSCopying, NSApplicationMain and do not fall under the scope of the native Swift lowercase convention.
>>
>>
>> <https://gist.github.com/erica/29c1a7fb7f49324d572f#alternatives-considered>Alternatives Considered
>>
>> There are no alternatives for this proposal.
>>
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160217/82a47f76/attachment.html>
More information about the swift-evolution
mailing list