Kareman's picture
initial commit: full implemntation of git explorer project
acc643d
Raw
History Blame Contribute Delete
871 Bytes
from pydantic import BaseModel, Field
class ImportInfo(BaseModel):
module: str | None
name: str
alias: str | None = None
class CallInfo(BaseModel):
name: str
line: int
qualified_name: str | None = None
class FunctionInfo(BaseModel):
name: str
qualified_name: str
line: int
end_line: int
docstring: str | None
source_code: str
calls: list[CallInfo] = Field(default_factory=list)
class ClassInfo(BaseModel):
name: str
qualified_name: str
line: int
end_line: int
source_code: str
methods: list[FunctionInfo] = Field(default_factory=list)
class PythonFileInfo(BaseModel):
path: str
imports: list[ImportInfo] = Field(default_factory=list)
classes: list[ClassInfo] = Field(default_factory=list)
functions: list[FunctionInfo] = Field(default_factory=list)