internal virtual bool ForEachAncestor(Func<RubyModule/*!*/, bool>/*!*/ action) { Context.RequiresClassHierarchyLock(); return ForEachDeclaredAncestor(action); }
public static RubyArray /*!*/ GetIncludedModules(RubyModule /*!*/ self) { RubyArray ancestorModules = new RubyArray(); self.ForEachAncestor(true, delegate(RubyModule /*!*/ module) { if (module != self && !module.IsClass && !ancestorModules.Contains(module)) { ancestorModules.Add(module); } return(false); }); return(ancestorModules); }