-
Notifications
You must be signed in to change notification settings - Fork 0
Architecture Code Generation
Version: 3.1.0
Status: ✅ Vollständig implementiert
VelinScript bietet umfangreiche Code-Generierung für 8 Zielsprachen (Rust, PHP, Python, TypeScript, JavaScript, Go, Java, C#), die Entwicklern hilft, Boilerplate-Code zu vermeiden und schnell produktive APIs zu erstellen.
Der Compiler kann Code für verschiedene Zielplattformen und Frameworks generieren:
| Sprache | Frameworks | Besonderheiten | Status |
|---|---|---|---|
| Rust | Axum, Actix | Async-first, High Performance | ✅ |
| PHP | Laravel, Symfony | Controller-Klassen, PSR-Standards | ✅ |
| Python | FastAPI, Flask | Pydantic Models, Type Hints | ✅ |
| TypeScript | Express, NestJS | Interfaces, Generics, Type Safety | ✅ |
| JavaScript | Express, Node.js | ES Modules, Async/Await | ✅ |
| Go | Gin, Echo | Goroutines, Error Handling | ✅ |
| Java | Spring Boot | POJOs, Lombok Support | ✅ |
| C# | ASP.NET Core | File-Scoped Namespaces, PascalCase | ✅ |
Siehe: Multi-Target Compilation Dokumentation für Details zu allen Targets.
Implementierung: compiler/src/codegen/boilerplate.rs
Generiert vollständige REST-API-Endpunkte:
velin generate api --name User --path /api/usersGeneriert:
- GET
/api/users- Liste aller Users - POST
/api/users- Neuen User erstellen - GET
/api/users/:id- User nach ID - PUT
/api/users/:id- User aktualisieren - DELETE
/api/users/:id- User löschen
Generiert vollständige CRUD-Operationen für ein Modell:
velin generate crud --name Product --fields "id:string,name:string,price:number"Generiert:
- Struct-Definition
- CRUD-Endpunkte
- Database-Integration
- Validation
Implementierung: compiler/src/codegen/client.rs
Generiert TypeScript/JavaScript/Rust Clients aus OpenAPI-Spezifikationen:
velin generate client --openapi api.json --language typescriptUnterstützte Sprachen:
- TypeScript
- JavaScript
- Rust
Features:
- Automatische Methoden-Generierung aus OpenAPI Paths
- Type-Safe API-Calls
- Error Handling
- Request/Response-Typen
Implementierung: compiler/src/codegen/autodoc.rs
Status: ✅ Vollständig implementiert
Generiert strukturierte Dokumentation aus /// Doc-Comments:
Features:
- JSON-Dokumentation
- Knowledge Base Generation für RAG/LLM
- LLM-freundliche Kontextinformationen
- Integration mit
@VelinAutoDocDecorator
Output-Format:
{
"project": "VelinProject",
"version": "1.0.0",
"items": [...],
"knowledge_base": [...]
}Implementierung: compiler/src/codegen/autotest.rs
Status: ✅ Vollständig implementiert
Generiert automatisch Test-Stubs für Funktionen mit @VelinAutoTest:
Features:
- Mock-Daten-Generierung basierend auf Parametertypen
- Test-Stub-Generierung
- Grundlegende Assertions
- Integration in Codegen-Pipeline
Generierter Code:
#[tokio::test]
async fn test_auto_functionName() {
let param1 = "mock_param1".to_string();
let result = functionName(param1).await;
assert!(result.is_ok(), "Function execution failed");
}Implementierung: compiler/src/codegen/framework.rs
Status: ✅ Vollständig implementiert
- Automatische Erkennung aus Config
- Decorator-basierte Erkennung
- Default: Axum
- Framework-spezifische Imports
- Router/App-Initialisierung
- Handler-Signaturen
- Middleware-Integration
Implementierung: compiler/src/codegen/openapi.rs
Status: ✅ Vollständig implementiert
Generiert OpenAPI 3.0 Spezifikationen aus VelinScript-Code:
Features:
- Automatische Endpoint-Erkennung
- Parameter-Dokumentation
- Request/Response Schemas
- Security Requirements
- Operation IDs
CLI:
velin open-api -i main.velin -o api.jsonSiehe: Multi-Target Compilation Beispiele für detaillierte Beispiele aller Targets.
Letzte Aktualisierung: 2026-01-30
Version: 3.1.0
- Compiler Architecture
- Pass-Verlauf
- Type Inference
- Code Ordering
- IR Representation
- Borrow Checker
- Code Generation
- Multi-Target Compilation
- Module Resolution
- Framework Integration
- Parallelization
- AI Compiler Passes
- Prompt Optimizer
- System Generation
- Basics
- APIs
- Security
- Database
- Validation
- Authentication
- ML/LLM
- Intelligence Features
- Type Inference
- ML Training
- Pattern Matching
- Closures
- Collections
- HTTP Client
- String Interpolation
- Debugger
- Vektor-Datenbanken
- CLI Reference
- API Keys Setup
- Advanced
- Backend
- Security Best Practices
- AI/ML
- Auto Imports
- Plugin Development