swift
b9354862 - [AutoDiff] Rename `@differentiating` to `@derivative(of:)`. (#28481)

Commit
5 years ago
[AutoDiff] Rename `@differentiating` to `@derivative(of:)`. (#28481) Rename `@differentiating` to `@derivative(of:)`. `@derivative(of:)` more clearly evokes derivative registration; the syntax is otherwise unchanged. Deprecate `@differentiating`, to be removed in the next release. Discussed here: https://github.com/apple/swift/pull/28321#discussion_r347757647. Partially resolves TF-999. TF-1000 tracks updating all `@differentiating` usages across repositories. --- Confirmed via `grep -nr differentiating include lib stdlib test` that all remaining occurrences are intended. --- Example: ```swift extension Float { @derivative(of: +) static func vjpAdd(lhs: Self, rhs: Self) -> (value: Self, pullback: (Self) -> (Self, Self)) { (lhs + rhs, { v in (v, v) }) } } ```
Author
Committer
Parents
  • include/swift
    • AST
      • File
        Attr.def
      • File
        Attr.h
      • File
        DiagnosticsParse.def
      • File
        DiagnosticsSema.def
      • File
        Types.h
    • Parse
      • File
        Parser.h
    • SIL
      • File
        SILDifferentiabilityWitness.h
  • lib
    • AST
      • File
        ASTScopeCreation.cpp
      • File
        Attr.cpp
      • File
        Decl.cpp
    • Parse
      • File
        ParseDecl.cpp
    • SILGen
      • File
        SILGen.cpp
    • Sema
      • File
        TypeCheckAttr.cpp
      • File
        TypeCheckDeclOverride.cpp
    • Serialization
      • File
        ModuleFormat.h
      • File
        Serialization.cpp
  • stdlib
    • private/DifferentiationUnittest
      • File
        DifferentiationUnittest.swift
    • public
      • Differentiation
        • File
          DifferentiationSupport.swift
      • Platform
        • tgmath.swift.gyb
      • core
        • FloatingPointTypes.swift.gyb
  • test
    • AutoDiff
      • Inputs
        • File
          differentiable_attr_silgen_other_module.swift
      • compiler_crashers
        • File
          tf881-derivative-local-variable-capture.swift
      • File
        derivative_attr_parse.swift
      • File
        derivative_attr_type_checking.swift
      • File
        derivative_registration.swift
      • File
        generics.swift
      • File
        sil_differentiability_witness_silgen.swift
      • File
        subset_parameters_thunk.swift
    • IDE
      • File
        complete_decl_attribute.swift
    • NameBinding
      • File
        astscope-differentiating-attr.swift
    • Serialization
      • File
        derivative_attr.swift
    • Syntax
      • Outputs
        • round_trip_parse_gen.swift.withkinds
      • File
        round_trip_parse_gen.swift
  • utils/gyb_syntax_support
    • File
      AttributeNodes.py
    • File
      NodeSerializationCodes.py