Avatar
asyncとthrowsは出現ポジションが文法上限定されてて衝突しないからエスケープ不要でも問題無さそうですね
7:25 AM
https://github.com/apple/swift-syntax/blob/main/gyb_syntax_support/AttributeKinds.py ContextualSimpleDeclAttribute('async', 'Async', DeclModifier, OnVar, OnFunc, ABIBreakingToAdd, ABIBreakingToRemove, APIBreakingToAdd, APIBreakingToRemove, code=106), (edited)
7:26 AM
最近は swift-syntax リポジトリの方に定義の親玉があって、
7:27 AM
どのキーワード(?)がどういう場所に出てくるかとか定義されてる この親玉からコンパイラ側の一部のソースコードとかも生成されている
7:31 AM
https://github.com/apple/swift-syntax/blob/main/gyb_syntax_support/Token.py#L261 ExprKeyword('Throws', 'throws', serialization_code=53), (edited)
7:32 AM
asyncは contextual simple decl attributeで、throwsはexpr keywordらしい。