[snip] Sort of, in C++ it would be something like thistemplate<template<typename> class OuterName> void myfunction(OuterName<int> x){ stuff(); } [snip]
You mean like this struct Foo(T) { T x; } void foo(T : Foo!V, V)(T x) { import std.stdio: writeln; writeln("here"); } void main() { Foo!int x; foo(x); }