This file is a list of the people responsible for ensuring that patches for a
particular part of Swift are reviewed, either by themselves or by someone else.
They are also the gatekeepers for their part of Swift, with the final word on
what goes in or not.

The list is sorted by surname and formatted to allow easy grepping and
beautification by scripts.  The fields are: name (N), email (E), web-address
(W), description (D).

N: David Abrahams
E: dabrahams@apple.com
D: Swift standard library

N: Erik Eckstein
E: eeckstein@apple.com
D: SILOptimizer

N: Xi Ge
E: xi_ge@apple.com
D: Markup, Migrator, lib/Syntax

N: Doug Gregor
E: dgregor@apple.com
D: AST, Basic, Parse, Sema

N: Joe Groff
E: jgroff@apple.com
D: SIL, SILGen, everything in Swift not covered by someone else

N: Argyrios Kyrzidis
E: kyrtzidis@apple.com
D: IDE, SourceKit, swift-ide-test

N: Luke Larson
E: llarson@apple.com
D: Swift Benchmark Suite

N: John McCall
E: rjmccall@apple.com
D: Demangler, IRGen, Runtime

N: Jordan Rose
E: jordan_rose@apple.com
D: ClangImporter, Serialization, (Objective-)C printer, Driver

N: Anna Zaks
E: ganna@apple.com
D: SIL diagnostics passes
