| // Copyright 2014 The Bazel Authors. All rights reserved. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| package com.google.devtools.build.docgen; |
| |
| import com.google.devtools.common.options.Option; |
| import com.google.devtools.common.options.OptionDocumentationCategory; |
| import com.google.devtools.common.options.OptionEffectTag; |
| import com.google.devtools.common.options.OptionsBase; |
| import java.util.List; |
| |
| /** |
| * Command line options for the Build Encyclopedia docgen. |
| */ |
| public class BuildEncyclopediaOptions extends OptionsBase { |
| @Option( |
| name = "link_map_path", |
| abbrev = 'm', |
| defaultValue = "", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "Path to a JSON file that specifies link mappings (page name to URL).") |
| public String linkMapPath; |
| |
| @Option( |
| name = "input_dir", |
| abbrev = 'i', |
| defaultValue = "null", |
| allowMultiple = true, |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "An input directory to read source files") |
| public List<String> inputDirs; |
| |
| @Option( |
| name = "provider", |
| abbrev = 'p', |
| defaultValue = "", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "The name of the rule class provider" |
| ) |
| public String provider; |
| |
| @Option( |
| name = "output_file", |
| abbrev = 'f', |
| defaultValue = "", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "An output file.") |
| public String outputFile; |
| |
| @Option( |
| name = "output_dir", |
| abbrev = 'o', |
| defaultValue = ".", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "An output directory." |
| ) |
| public String outputDir; |
| |
| @Option( |
| name = "denylist", |
| oldName = "blacklist", |
| abbrev = 'b', |
| defaultValue = "", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "A path to a file listing rules not to document.") |
| public String denylist; |
| |
| @Option( |
| name = "single_page", |
| abbrev = '1', |
| defaultValue = "false", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "Whether to generate the BE as a single HTML page or one page per rule family." |
| ) |
| public boolean singlePage; |
| |
| @Option( |
| name = "help", |
| abbrev = 'h', |
| defaultValue = "false", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = "Prints the help string." |
| ) |
| public boolean help; |
| |
| @Option( |
| name = "create_toc", |
| abbrev = 't', |
| defaultValue = "false", |
| documentationCategory = OptionDocumentationCategory.UNCATEGORIZED, |
| effectTags = {OptionEffectTag.UNKNOWN}, |
| help = |
| "Whether a table-of-contents file should be created. Mutually exclusive with" |
| + " --single_page.") |
| public boolean createToc; |
| } |