首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Swift-开源分析

    Swift5.7 支持结构化不透明结果类型

    介绍当前提议主要是讲苹果在 Swift5.7 支持不透明结果类型的结构化表达,目前在 Swift5.7 已经实现。不透明结果类型可以用作函数的结果类型,变量的类型和下标元素的结果类型。

    86950编辑于 2022-07-04
  • 来自专栏Swift-开源分析

    Swift5.7 扩展不透明类型(some)到泛型参数

    总结通过当前提议 SE-0341,你应当知道:Swift5.7 通过运用 some 到泛型参数类型,是为了去除泛型模块声明的冗余表达;some 对应的是与之等价的泛型模版表达式;内部通过类型推断,确定真实的不透明参数类型所对应的类型

    3.3K141编辑于 2022-07-03
  • 来自专栏Swift-开源分析

    Swift5.7: 泛型类型支持带尖括号的扩展绑定

    介绍SE-0361,在 Swift5.7 已经实现。目前指定泛型的类型参数基本都是通过<>来表示,例如Array<String>。 { ... } // Extends Optional<String>总结Swift5.7 泛型类型支持带尖括号的扩展绑定至此,包括 extension, Swift 均支持带<>扩展语法

    1.9K20编辑于 2022-12-01
  • 来自专栏学海无涯

    Swift 5.7 新特性

    = "zhangsan" print(name) // Optional("zhangsan") // Swift5.7之前 // if let if let name = name { print (name) // zhangsan } // Swift5.7之后 // if let if let name { print(name) // zhangsan } func method { // Swift5.7之前 // guard let guard let name = name else { return } // Swift5.7之后 guard let age = age else { return } } 增强的闭包类型推断 let array: [String] = ["1", "2", "3", "4", "5"] // Swift5.7 0 } print(newArray1) // [1, 2, 3, 4, 5] // Swift5.7之后 let newArray2 = array.map { str in Int(str

    1.2K30编辑于 2022-06-17
  • 来自专栏学海无涯

    Swift 5.9 新特性

    .") // Swift5.7之后,Swift5.9之前 try await Task.sleep(until: .now + .seconds(1), clock: .suspending continue task...") } // 异步函数 func doSomeAsyncWork() async throws { print("start to work...") // Swift5.7

    94040编辑于 2023-08-02
  • 来自专栏Swift-开源分析

    标准库中的主要关联类型

    介绍SE-0358, Swift5.7 已实现。SE-0346 已经引入了主要关联类型特性。本篇提议目的是为了在 Swift 标准库中使用此特性,为现有协议支持主要关联类型。 Swift5.7中的新协议Clock只有Instant一个关联类型。在实际使用中,开发者更多使用的类型是Instant.Duration而不是Instant类型本身。

    87040编辑于 2022-11-29
  • 来自专栏一“技”之长

    对Swift中some和any关键字的理解

    对Swift中some和any关键字的理解 在最新Swift版本中(Xcode14,Swift5.7),如果协议中有使用泛型,则如果要将此协议作为参数类型,必须使用any关键字进行修饰。

    1.5K10编辑于 2022-11-14
  • 来自专栏Swift-开源分析

    Swift 5.7 使用 'if let a' 替换 'if let a = a'

    Swift5.7 中提议的解决方案:如果我们删除解包中右边的表达式,让编译器来自动隐藏当前的变量,只保留左边的变量名,这时这些可选绑定表达会更加简洁,而且可读性更强。

    1.6K10编辑于 2022-06-28
  • 来自专栏Swift-开源分析

    Swift 5.7 针对主要关联类型的轻量级同类型优化

    如果你正在实现开发一个语法高亮库,并且定义一个函数readSyntaxHighlightedLines读取高亮语法的行数, 这个函数使用SyntaxTokenSequence来包装返回结果,结果中的元素类型是[Token], 代表每一行中语法高亮的 token 数组。例如:

    84110编辑于 2022-10-08
  • 来自专栏Swift-开源分析

    "if #available"与不透明结果类型

    自 SE-0244 引入以来,不透明的结果类型已成为类型级抽象的强大工具,允许库作者隐藏其API的实现细节。

    73750编辑于 2022-11-30
领券