通用子程序从实现Ada.Iterator_Interfaces的包中获取类型,以利用Ada 2012 for ... in / of循环语法

时间:2015-01-27 12:52:10

标签: generics ada ada2012

据我所知,here任何实现Ada.Iterator_Interfaces的内容都可以使用Ada 2012 for循环语法。 “for ... [in | of] loop .. end loop;

如何创建一个通用子程序,我可以使用实现Ada.Iterator_Interfaces的包中的类型进行实例化?然后可以使用Ada 2012 for循环让该子程序迭代该类型。

在Java中,这可能看起来像:

public String join(Iterable<String> collection) {
   for (item : collection){
     //do stuff
   } 
}

例如(尽管不是唯一的情况)一个经典的连接函数,它可以包含任何包含字符串的可迭代容器,并返回在字符串列表中连接在一起的所有字符串。 例如。

my_container = ["a","b","c"]
join(my_container) = "abc"

由于

马特

0 个答案:

没有答案