Generics 集合中的功能调用中不兼容的实际参数使_与_分开

Generics 集合中的功能调用中不兼容的实际参数使_与_分开,generics,generic-list,eiffel,eiffel-scoop,Generics,Generic List,Eiffel,Eiffel Scoop,我不明白我错在哪里 class LINKED_LIST_SEP[G] inherit LINKED_LIST [G] create make, make_from_iterable, make_from_separate feature {NONE} -- Initialization make_from_separate (other: separate like Current) do defau

我不明白我错在哪里

class
    LINKED_LIST_SEP[G]

inherit
    LINKED_LIST [G]

create
    make,
    make_from_iterable,
    make_from_separate

feature {NONE} -- Initialization

    make_from_separate (other: separate like Current)
        do
            default_create
            across
                other is l_item
            loop
                check
                    attached {G} {SCOOP_UTIL}.any_from_separate (l_item) as l_v
                then
                    extend (l_v)
                end
            end
        end

end -- class

对于不受约束的形式泛型参数,隐式约束可以任意分离。但是,功能从任何_分开期待任何分开

以下解决方案是可能的:

添加一个测试,确保在从\u单独调用任何\u之前,l\u项不是无效的。 将任何_的签名从_separate更改为接受可分离类型。然而,在这种情况下,其结果也将变得可分离。 在类链接列表的形式泛型参数中添加一个独立于ANY的约束。
很好,我错过了可拆卸的,我记得单独的部分。我看到的最具扩展性的是在添加附件之前对其进行测试。谢谢。作为对泛型1编译的一个提示,对于那些没有很好地学习理论的人来说,它会更加明确;