Overload-Sets in D: Ad-hoc Template-APIs ohne zentrale Definition

(Ab)Using Overload Sets to Create Ad-Hoc Template APIs in D

Overload-Sets sind ein mächtiges, oft übersehenes Werkzeug in Ds generischer Programmierung. Dieser Artikel zeigt, wie man sie mit Template-Spezialisierung kombiniert, um flexible APIs zu bauen, die ohne zentrale Definition auskommen. Anhand von Beispielen wie einem dimensionsunabhängigen Vektor-Typ und der Erweiterung von std.conv.to wird demonstriert, wie man Muster auf verschiedene Template-Arten anwendet und so Code-Duplikation vermeidet. Der Autor erklärt, wie man eigene Typen meta-programmierfreundlich gestaltet und wie man APIs entwirft, die Nutzer mit eigenen Implementierungen erweitern können.

Die API, die benannt werden kann, ist nicht die unsterbliche API.

Mehr von diesem Tag

2026-07-21