Новый раг
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from hashlib import sha256
|
||||
|
||||
from app.modules.rag.indexing.code.entrypoints.registry import Entrypoint
|
||||
|
||||
|
||||
class FlaskEntrypointDetector:
|
||||
def detect(self, *, path: str, symbols: list) -> list[Entrypoint]:
|
||||
items: list[Entrypoint] = []
|
||||
for symbol in symbols:
|
||||
for decorator in symbol.decorators or []:
|
||||
lowered = decorator.lower()
|
||||
if ".route" not in lowered:
|
||||
continue
|
||||
items.append(
|
||||
Entrypoint(
|
||||
entry_id=sha256(f"{path}|flask|{symbol.symbol_id}|{decorator}".encode("utf-8")).hexdigest(),
|
||||
entry_type="http",
|
||||
framework="flask",
|
||||
route_or_command=decorator,
|
||||
handler_symbol_id=symbol.symbol_id,
|
||||
path=path,
|
||||
start_line=symbol.start_line,
|
||||
end_line=symbol.end_line,
|
||||
)
|
||||
)
|
||||
return items
|
||||
Reference in New Issue
Block a user