MCPcopy Index your code
hub / github.com/clipperhouse/gen

github.com/clipperhouse/gen @v4.3

Chat with this repo
repository ↗ · DeepWiki ↗ · release v4.3 ↗ · + Follow
27 symbols 92 edges 18 files 6 documented · 22%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

What’s this?

gen is a code-generation tool for Go. It’s intended to offer generics-like functionality on your types. Out of the box, it offers offers LINQ/underscore-inspired methods.

It also offers third-party, runtime extensibility via typewriters.

Introduction and docs…

Changelog

Hey, a video

Contributing

There are three big parts of gen.

gen

This repository. The gen package is primarily the command-line interface. Most of the work is done by the typewriter package, and individual typewriters.

typewriter

The typewriter package is where most of the parsing, type evaluation and code generation architecture lives.

typewriters

Typewriters are where templates and logic live for generating code. Here’s set, which will make a lovely Set container for your type. Here’s slice, which provides the built-in LINQ-like functionality. Here’s stringer, a fork of Rob Pike’s tool.

Third-party typewriters are added easily by the end user. You publish them as Go packages for import. Learn more...

We’d love to see typewriter packages for things like strongly-typed JSON serialization, Queues, Pools or other containers. Anything “of T” is a candidate for a typewriter.

Core symbols most depended-on inside this repo

getTypewriterImports
called by 6
get.go
add
called by 5
add.go
run
called by 4
run.go
get
called by 3
get.go
list
called by 3
list.go
help
called by 2
help.go
is
called by 2
watch.go
createCustomFile
called by 2
add.go

Shape

Function 22
Struct 4
TypeAlias 1

Languages

Go100%

Modules by API surface

main.go3 symbols
execute.go3 symbols
watch.go2 symbols
run_test.go2 symbols
run.go2 symbols
main_test.go2 symbols
help.go2 symbols
get.go2 symbols
add.go2 symbols
pkg.go1 symbols
list_test.go1 symbols
list.go1 symbols

For agents

$ claude mcp add gen \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page