我想知道将包传递给泛型函数的语法是什么.我已经尝试了几种方法但没有成功.
例如:
generic
with package <<SomeThing>> is <>;
procedure forEach(g: in <<MyType>>);
Run Code Online (Sandbox Code Playgroud)
要么
generic
with package <<SomeThing>>;
procedure forEach(g: in <<MyType>>);
Run Code Online (Sandbox Code Playgroud)
要么
generic
package <<SomeThing>>;
procedure forEach(g: in <<MyType>>);
Run Code Online (Sandbox Code Playgroud)
包必须是通用包的实例(否则编译器不会对包有任何了解).语法是:
generic
with package Foo is new Bar (<>);
procedure Foreach (G : Foo.T);
Run Code Online (Sandbox Code Playgroud)
请参阅Ada Wikibook以及正式软件包(ARM 12.7)参考手册部分末尾的示例.