[swift-dev] Making sense of Swift AST - pattern_binding_decl and var_decl

Lee M me at leemcdermott.co.uk
Fri Dec 18 10:08:14 CST 2015


With the code: var foo = true, swift parses this into the following AST:

(pattern_binding_decl
    (pattern_named 'foo')
    (boolean_literal_expr type='<null>' value=true))
(var_decl "foo" type='<null type>' storage_kind=stored)))

I'm wondering why VarDecl and PatternBindingDecl are separate nodes in the
tree and not nested somehow, as they both represent similar things..?

Might be a trivial question as I'm not a compiler guru. I'm porting parts
of the AST representation to another language for a project.

Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20151218/b2790b49/attachment.html>


More information about the swift-dev mailing list