-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathast.ex
More file actions
20 lines (18 loc) · 767 Bytes
/
ast.ex
File metadata and controls
20 lines (18 loc) · 767 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
defmodule ElixirScope.AST do
@moduledoc """
Layer 2: AST Operations and Repository
Coordinates between:
- Parsing: Extract and analyze AST
- Data: Define what we store
- Repository: How we store and retrieve
- Transformation: Modify AST for instrumentation
- Compilation: Build system integration
- Querying: How we search stored data
- Analysis: Pattern detection and optimization
"""
# Main entry points for the AST layer
defdelegate parse(source), to: ElixirScope.AST.Parsing.Parser
defdelegate store_module(data), to: ElixirScope.AST.Repository.Enhanced
defdelegate transform(ast, plan), to: ElixirScope.AST.Transformation.Transformer
defdelegate find_patterns(criteria), to: ElixirScope.AST.Analysis.PatternMatcher.Core
end