Skip to content
This repository was archived by the owner on Jun 16, 2019. It is now read-only.
This repository was archived by the owner on Jun 16, 2019. It is now read-only.

Refactoring AST generation #28

@surovic

Description

@surovic

The state of the AST generation algorithms and data structure codebase could be better and refactored with good programming practices in mind. The incorporation of libclang for it's AST should be considered instead of the custom AST data structure we now have.

The major points to consider when refactoring

  • Classes should adhere to rule of three (or rule of five, or rule of zero).
  • Classes should cooperate flawlessly with STL containers.
  • Use STL containers wherever possible.
  • Avoid explicit dynamic memory allocation (using new) whenever possible. If a custom allocation mechanism is needed, use allocators and STL containers.
  • Use glog's CHECK() and LOG() instead of relying on llvm_unreachable() and LLVM diagnostics.
  • Do not use goto.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions