- 
                Notifications
    
You must be signed in to change notification settings  - Fork 3
 
Home
        Scott Xu edited this page Sep 23, 2021 
        ·
        5 revisions
      
    This page provides an overview of the qasmtools library and the overall directory structure.
| Directory | Description | 
|---|---|
include | 
The main source code directory | 
qasm | 
Example openQASM source files | 
unit_tests | 
Unit testing via Google Test/Mock (source included) | 
| Directory | Description | 
|---|---|
include/qasmtools/ast | 
Holds the class hierarchy for representing QASM syntax trees (ASTs). Doubles as the library IR | 
    .../semantic.hpp
 | 
Holds semantic analysis & type checking routines | 
    .../visitor.hpp
 | 
Defines a visitor interface for ASTs | 
    .../replacer.hpp
 | 
Concrete visitors for performing node insertion, deletion and replacement | 
    .../traversal.hpp
 | 
Concrete visitor for performing post-order traversal of ASTs | 
include/qasmtools/parser | 
Holds the openQASM parser | 
include/qasmtools/tools | 
Contains miscellaneous tools for working with QASM ASTs | 
    .../ast_printer.hpp
 | 
Prints the raw AST, as an alternative to the source code printer (<< overload) | 
include/qasmtools/utils | 
Miscellaneous utilities |