From: Alexandre Terrasa Date: Fri, 26 Jul 2013 18:16:26 +0000 (-0400) Subject: ni_nitdoc: added --private option X-Git-Tag: v0.6.1~73^2~5^2~35 X-Git-Url: http://nitlanguage.org ni_nitdoc: added --private option Signed-off-by: Alexandre Terrasa --- diff --git a/src/ni_nitdoc.nit b/src/ni_nitdoc.nit index b32d04d..9cfb9fd 100644 --- a/src/ni_nitdoc.nit +++ b/src/ni_nitdoc.nit @@ -30,11 +30,13 @@ class Nitdoc private var dot_dir: nullable String private var share_dir: nullable String private var source: nullable String + private var min_visibility: MVisibility private var opt_dir = new OptionString("Directory where doc is generated", "-d", "--dir") private var opt_source = new OptionString("What link for source (%f for filename, %l for first line, %L for last line)", "--source") private var opt_sharedir = new OptionString("Directory containing the nitdoc files", "--sharedir") private var opt_nodot = new OptionBool("Do not generate graphes with graphiviz", "--no-dot") + private var opt_private: OptionBool = new OptionBool("Generate the private API", "--private") private var opt_custom_title: OptionString = new OptionString("Title displayed in the top of the Overview page and as suffix of all page names", "--custom-title") private var opt_custom_menu_items: OptionString = new OptionString("Items displayed in menu before the 'Overview' item (Each item must be enclosed in 'li' tags)", "--custom-menu-items") @@ -50,6 +52,7 @@ class Nitdoc toolcontext.option_context.add_option(opt_source) toolcontext.option_context.add_option(opt_sharedir) toolcontext.option_context.add_option(opt_nodot) + toolcontext.option_context.add_option(opt_private) toolcontext.option_context.add_option(opt_custom_title) toolcontext.option_context.add_option(opt_custom_footer_text) toolcontext.option_context.add_option(opt_custom_overview_text) @@ -104,6 +107,12 @@ class Nitdoc print "Error: Invalid nitdoc share files. Check --sharedir or envvar NIT_DIR" abort end + + if opt_private.value then + min_visibility = none_visibility + else + min_visibility = protected_visibility + end end source = opt_source.value end @@ -158,14 +167,14 @@ class Nitdoc content.append("],") end for mclass in model.mclasses do - if mclass.visibility <= none_visibility then continue + if mclass.visibility < min_visibility then continue content.append("\"{mclass.name}\": [") content.append("\{txt: \"{mclass.name}\", url:\"{mclass.url}\" \},") content.append("],") end var name2mprops = new HashMap[String, Set[MPropDef]] for mproperty in model.mproperties do - if mproperty.visibility <= none_visibility then continue + if mproperty.visibility < min_visibility then continue if mproperty isa MAttribute then continue if not name2mprops.has_key(mproperty.name) then name2mprops[mproperty.name] = new HashSet[MPropDef] name2mprops[mproperty.name].add_all(mproperty.mpropdefs) @@ -465,6 +474,7 @@ class NitdocFullindex append("

Classes

") append("") @@ -480,6 +490,7 @@ class NitdocFullindex append("

Properties

") append("