From 90f11706ac5ad71fc98c82a7e8d065880c23aa56 Mon Sep 17 00:00:00 2001 From: mcc Date: Thu, 25 Mar 2021 18:18:11 -0400 Subject: [PATCH] Fix unclear phrasing in 8.2.13 in paragraph on closure traits --- src/expressions/closure-expr.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/expressions/closure-expr.md b/src/expressions/closure-expr.md index 366984611..10cd8e3c7 100644 --- a/src/expressions/closure-expr.md +++ b/src/expressions/closure-expr.md @@ -31,8 +31,8 @@ A closure can be forced to capture its environment by copying or moving values b This is often used to ensure that the closure's type is `'static`. The compiler will determine which of the [closure traits](../types/closure.md#call-traits-and-coercions) the closure's type will implement by how it acts on its captured variables. -The closure will also implement [`Send`](../special-types-and-traits.md#send) and/or [`Sync`](../special-types-and-traits.md#sync) if all of its captured types do. -These traits allow functions to accept closures using generics, even though the exact types can't be named. +The closure will also implement the closure traits [`Send`](../special-types-and-traits.md#send) and/or [`Sync`](../special-types-and-traits.md#sync) if all of its captured types do. +Closure traits allow functions to accept closures using generics, even though the exact types can't be named. In this example, we define a function `ten_times` that takes a higher-order function argument, and we then call it with a closure expression as an argument, followed by a closure expression that moves values from its environment.