• verwaest's avatar
    Templatize AstVisitor with its subclass · ebf166df
    verwaest authored
    This replaces the vtable on AstNode with a NodeType tag. The visitors replace double dispatch with a single switch over the NodeType.
    
    For now, visitors with subclasses still have virtual methods themselves. We should probably specialize them later as well.
    
    The uint8_t NodeType allows us to better pack memory, saving 8-16 bytes on many AST nodes (with additional packing that I'll do in a follow-up CL)
    
    BUG=
    
    Review-Url: https://codereview.chromium.org/2142233003
    Cr-Commit-Position: refs/heads/master@{#37788}
    ebf166df
Name
Last commit
Last update
..
OWNERS Loading commit data...
ast-expression-rewriter.cc Loading commit data...
ast-expression-rewriter.h Loading commit data...
ast-expression-visitor.cc Loading commit data...
ast-expression-visitor.h Loading commit data...
ast-literal-reindexer.cc Loading commit data...
ast-literal-reindexer.h Loading commit data...
ast-numbering.cc Loading commit data...
ast-numbering.h Loading commit data...
ast-type-bounds.h Loading commit data...
ast-value-factory.cc Loading commit data...
ast-value-factory.h Loading commit data...
ast.cc Loading commit data...
ast.h Loading commit data...
modules.cc Loading commit data...
modules.h Loading commit data...
prettyprinter.cc Loading commit data...
prettyprinter.h Loading commit data...
scopeinfo.cc Loading commit data...
scopeinfo.h Loading commit data...
scopes.cc Loading commit data...
scopes.h Loading commit data...
variables.cc Loading commit data...
variables.h Loading commit data...