API Reference gt_bridge v#0.17.1

Copy Markdown View Source

Modules

I supervise children that evaluate arbitrary Elixir code (Similar to IEx).

I am examples for GtBridge.Analysis, the static analysis module.

I am examples for GtBridge.CodeMonitor, the sole publisher of %ModuleEvent{kind: :recompiled} on the bridge's EventBroker bus.

I am examples for the Elixir autocompletion system.

I am examples for GtBridge.Documentation, the module doc extractor.

I am examples for GtBridge.Eval, the evaluation GenServer.

I test the hot-reload system end-to-end against a real dependency.

I am examples for the Mondrian graph view shim.

I am examples for the GtBridge serializer.

I am examples for TCP listener and connection setup.

I am examples for the Phlow view system. I also define a sample struct with two views to exercise view registration and rendering.

I exercise the long-lived GtBridge.Xref service end-to-end and the refactored callers (function_references/3, module_graph/1) that depend on it. Acts as a regression catcher for the substrate cleanup — if anyone removes the xref subscription or the supervision child, these examples go red.

Documentation for GtBridge.

I provide static analysis data for GT visualization.

I maintain the set of every loaded Elixir module name (e.g. "GtBridge.Eval"), populated initially from :application.get_key/2 for every loaded application and maintained additively by EventBroker %ModuleEvent{} events.

I walk Elixir AST and extract call sites.

I own the named ETS table that backs all GtBridge derived-state caches and invalidate per-module entries when the module recompiles.

I am the sole publisher of %ModuleEvent{kind: :recompiled} events.

I provide code completion for Elixir source fragments.

I expose application-level dependency graph queries to GT.

I provide structured access to Elixir module and function documentation.

I am a per-session evaluation GenServer.

I capture a Macro.Env with built-in helpers available.

I reprsent an error in evaluation

I prime an evaluation session with a module's preamble (alias / import / require declarations) so completion + eval work in the module's namespace context.

I map session IDs to GtBridge.Eval processes.

I define the EventBroker filters and the broadcast helper for GtBridge's module-event bus.

I am the GtBridge.Events.AnyModuleEvent filter generated by deffilter in GtBridge.Events.

I am the body of an EventBroker event announcing a change to a BEAM module.

Helper module for getting view declarations for Elixir objects.

I drive the hot-reload pipeline: write source to disk, compile, persist beam files, broadcast events, and return a payload that GT-side subscribers can re-render from directly.

I am the cowboy_loop handler for the /EVENTS SSE channel.

I am the shared mix-project introspection helpers used across hot_reload, module_creator, and code_monitor.

I expose Mnesia table introspection to GT.

I create a fresh Elixir source file for a module name and recompile.

I am a Registry for objects that are referenced from GT.

Builder for creating Phlow views.

A column definition for columned list and tree views.

A Phlow columned list view specification.

A Phlow columned tree view specification.

An empty Phlow view specification.

A Phlow list view specification.

I am a Phlow Mondrian (graph) view specification.

A Phlow text editor view specification.

A Phlow view specification that wraps a specific view type (list, text, etc.) with common properties like title and priority.

I expose process-supervision introspection to GT.

Helper macros for declaring Phlow views on typed structs.

I provide helper functions for views that are written within GT.

I hold views for various types, please query me to find out views you are interested in.

I display a map as a tree graph where each key points to its value, and nested maps expand recursively.

I am a long-lived wrapper around OTP's :xref cross-reference server.

I am the TCP Connection for MsgPack messages

I am a TCP listener. I listen on a given interface and port for incoming connections.

I am a TCP Supervisor, I supervise TCP Listeners and Connections.