<commit_before># Task Local Values

* Proposal: [SE-0311](0311-task-locals.md)
* Authors: [Konrad 'ktoso' Malawski](https://github.com/ktoso)
* Review Manager: [<NAME>](https://github.com/rjmccall)
* Status: **Active Review (April 27...May 4, 2021)**
* Implementation: Available in [recent `main` snapshots](https://swift.org/download/#snapshots) behind the flag `-Xfrontend -enable-experimental-concurrency`
* Previous Revision: [1](https://github.com/apple/swift-evolution/blob/884df3ad6020f0724e06184534b21dd76bd6f4bf/proposals/0311-task-locals.md)
* Review: ([first review](https://forums.swift.org/t/se-0311-task-local-values/47478)) (([second review](https://forums.swift.org/t/se-0311-2nd-review-task-local-values/47738))

## Table of Contents

* [Introduction](#introduction)
* [Motivation](#motivation)
* [Proposed solution](#proposed-solution)
  * [Task Local Values](#task-local-values-1)
* [Detailed design](#detailed-design)
  * [Declaring task-local values](#declaring-task-local-values)
  * [Binding task-local values](#binding-task-local-values)
    * [Binding values for the duration of a child-task](#binding-values-for-the-duration-of-a-child-task)
    * [Forcing inheritance in a detached task](#forcing-inheritance-in-a-detached-task)
  * [Task-local value lifecycle](#task-local-value-lifecycle)<commit_msg>Remove a spurious LP<commit_after># Task Local Values

* Proposal: [SE-0311](0311-task-locals.md)
* Authors: [Konrad 'ktoso' Malawski](https://github.com/ktoso)
* Review Manager: [<NAME>](https://github.com/rjmccall)
* Status: **Active Review (April 27...May 4, 2021)**
* Implementation: Available in [recent `main` snapshots](https://swift.org/download/#snapshots) behind the flag `-Xfrontend -enable-experimental-concurrency`
* Previous Revision: [1](https://github.com/apple/swift-evolution/blob/884df3ad6020f0724e06184534b21dd76bd6f4bf/proposals/0311-task-locals.md)
* Review: ([first review](https://forums.swift.org/t/se-0311-task-local-values/47478)) ([second review](https://forums.swift.org/t/se-0311-2nd-review-task-local-values/47738))

## Table of Contents

* [Introduction](#introduction)
* [Motivation](#motivation)
* [Proposed solution](#proposed-solution)
  * [Task Local Values](#task-local-values-1)
* [Detailed design](#detailed-design)
  * [Declaring task-local values](#declaring-task-local-values)
  * [Binding task-local values](#binding-task-local-values)
    * [Binding values for the duration of a child-task](#binding-values-for-the-duration-of-a-child-task)
    * [Forcing inheritance in a detached task](#forcing-inheritance-in-a-detached-task)
  * [Task-local value lifecycle](#task-local-value-lifecycle)
{'fraction_non_alphanumeric': 0.17004504504504506, 'fraction_numerical': 0.04954954954954955, 'mean_word_length': 5.5318627450980395, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 12, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7460972', 'n_tokens_mistral': 1033, 'n_tokens_neox': 891, 'n_words': 150}