go-toolsmith.github.io

Site for Go tools crafters: combined documentation for go-toolsmith packages, external references and other useful resources.

There are two major project goals:

  1. Provide reusable libraries that make Go tools implementation easier.
  2. Knowledge sharing. Make tools development less frustrating by providing docs for parts that are not easy to grasp and/or hard to find on the internet for whatever reason.

Packages

List of packages maintained under go-toolsmith project.

astcopy GoDoc

Package astcopy implements Go AST deep copy operations.

astequal GoDoc

Package astequal provides AST (deep) equallity check operations.

astfmt GoDoc

Package astfmt implements ast.Node formatting with fmt-like API.

astp GoDoc

Package astp provides AST predicates.

strparse GoDoc

Package strparse provides convenience wrappers around go/parser for simple expr/stmt/decl parsing from string.

Users

Projects that use go-toolsmith and are willing to share that fact.