---
title: registry | CodeWeaver Docs
description: API reference for codeweaver.semantic.registry
url: "https://docs.knitli.com/api/semantic/registry"
type: static
generatedAt: "2026-04-17T17:21:09.599Z"
---

# registry
       [Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F.%20I%20want%20to%20ask%20questions%20about%20it.)[View in Markdown](/codeweaver/api/semantic/registry.md)       [Share on LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F)[Share on X](https://x.com/intent/tweet?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F&text=registry)[Share on Threads](https://threads.net/intent/post?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F&text=registry)[Share on Bluesky](https://bsky.app/intent/compose?text=registry%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F)[Share on Facebook](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F)[Share on Reddit](https://reddit.com/submit?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F&title=registry)[Share on Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F&t=registry)[Share on Email](mailto:?subject=registry&body=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F)[Share on WhatsApp](https://wa.me/?text=registry%20https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F)[Share on Telegram](https://t.me/share/url?url=https%3A%2F%2Fdocs.knitli.com%2Fcodeweaver%2Fapi%2Fsemantic%2Fregistry%2F&text=registry)
# `codeweaver.semantic.registry`
[Section titled “codeweaver.semantic.registry”](#codeweaversemanticregistry)
ThingRegistry manages the registration and retrieval of grammar Things and Categories for programming languages.

## Class: `ThingRegistry`
[Section titled “Class: ThingRegistry”](#class-thingregistry)
Registry for managing Things and Categories for programming languages.

Responsibilities:

 - A simple store for constructed Things and Categories
 - Along with ThingGenerator, provides lazy access to Things by name

### Method: `get_category_by_name`
[Section titled “Method: get_category_by_name”](#method-get_category_by_name)

**

```
get_category_by_name()
```

Get a Category by its name across all languages.

### Method: `get_direct_connections_by_source`
[Section titled “Method: get_direct_connections_by_source”](#method-get_direct_connections_by_source)

**

```
get_direct_connections_by_source()
```

Get DirectConnections by their source Thing name across all languages.

### Method: `get_positional_connections_by_source`
[Section titled “Method: get_positional_connections_by_source”](#method-get_positional_connections_by_source)

**

```
get_positional_connections_by_source()
```

Get PositionalConnectionss by their source Thing name across all languages.

### Method: `get_thing_by_name`
[Section titled “Method: get_thing_by_name”](#method-get_thing_by_name)

**

```
get_thing_by_name()
```

Get a Thing by its name across all languages.

### Method: `has_language`
[Section titled “Method: has_language”](#method-has_language)

**

```
has_language()
```

Check if the registry has any Things or Categories for the specified language.

### Method: `is_registered`
[Section titled “Method: is_registered”](#method-is_registered)

**

```
is_registered()
```

Check if a Thing or Category is already registered.

### Method: `register_connection`
[Section titled “Method: register_connection”](#method-register_connection)

**

```
register_connection()
```

Register a Connection in the appropriate category.

### Method: `register_connections`
[Section titled “Method: register_connections”](#method-register_connections)

**

```
register_connections()
```

Register multiple Connections.

### Method: `register_thing`
[Section titled “Method: register_thing”](#method-register_thing)

**

```
register_thing()
```

Register a Thing in the appropriate category.

### Method: `register_things`
[Section titled “Method: register_things”](#method-register_things)

**

```
register_things()
```

Register multiple Things.

## Function: `build_models`
[Section titled “Function: build_models”](#function-build_models)

**

```
build_models()
```

Build models to populate the registry.