class IDL::AST::Module
def copy_from(_template, instantiation_context)
def copy_from(_template, instantiation_context) super if _template.has_anchor? # module anchor is first to be copied/instantiated and # should be registered in instantiation_context cp = IDL::AST::TemplateParam.concrete_param(instantiation_context, _template.anchor) # concrete param must be a IDL::Type::NodeType and it's node a Module (should never fail) raise "Invalid concrete anchor found" unless cp.is_a?(IDL::Type::NodeType) && cp.node.is_a?(IDL::AST::Module) @anchor = cp.node # link our self into module chain @anchor.find_last.set_next(self) end @next = nil # to be sure self end