// ---------------------------------------------------------------------- /// Extracts all public constructors/fields/functions from the given type. /// /// @param type The type from which to extract the members. /// static void ExtractType(LibraryChildNamespace parentNamespace, Type type) { var libraryType = new LibraryType(type); parentNamespace.AddChild(libraryType); ExtractConstructors(libraryType, type); ExtractFields(libraryType, type); ExtractFunctions(libraryType, type); }
// ====================================================================== // UTILITIES // ---------------------------------------------------------------------- /// Returns the child namespace library object with the given name. /// /// @param name The name of the child namespace to search for. /// @return The found or created child namespace library object. /// public LibraryChildNamespace GetChildNamespace(string name) { var node = GetChild <LibraryChildNamespace>(t => t.GetRawName() == name); if (node == null) { node = new LibraryChildNamespace(name); AddChild(node); } return(node); }