X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=utilities%2Fgengetopt%2Fskels%2Frequired_option.cc;fp=utilities%2Fgengetopt%2Fskels%2Frequired_option.cc;h=864a9e1ec632033e18bd5a55c0b733b172d8c8b4;hb=79381bc54b9e0c85156460daa211fe5ac83da0a7;hp=0000000000000000000000000000000000000000;hpb=4454c06e212fb6af58d206f2d6f9b76778858967;p=clitk.git diff --git a/utilities/gengetopt/skels/required_option.cc b/utilities/gengetopt/skels/required_option.cc new file mode 100644 index 0000000..864a9e1 --- /dev/null +++ b/utilities/gengetopt/skels/required_option.cc @@ -0,0 +1,66 @@ +/* + * File automatically generated by + * gengen 1.2 by Lorenzo Bettini + * http://www.gnu.org/software/gengen + */ + +#include "required_option.h" + +void +required_option_gen_class::generate_required_option(ostream &stream, unsigned int indent) +{ + string indent_str (indent, ' '); + indent = 0; + + if (checkrange) + { + stream << "if ("; + generate_string (mode_condition, stream, indent + indent_str.length ()); + stream << "check_multiple_option_occurrences("; + generate_string (package_var_name, stream, indent + indent_str.length ()); + stream << ", args_info->"; + generate_string (option_var_name, stream, indent + indent_str.length ()); + stream << "_given, args_info->"; + generate_string (option_var_name, stream, indent + indent_str.length ()); + stream << "_min, args_info->"; + generate_string (option_var_name, stream, indent + indent_str.length ()); + stream << "_max, \""; + generate_string (option_descr, stream, indent + indent_str.length ()); + stream << "\"))"; + stream << "\n"; + stream << indent_str; + stream << " error = 1;"; + stream << "\n"; + stream << indent_str; + stream << "\n"; + stream << indent_str; + } + else + { + stream << "if ("; + generate_string (mode_condition, stream, indent + indent_str.length ()); + stream << "! args_info->"; + generate_string (option_var_name, stream, indent + indent_str.length ()); + stream << "_given)"; + stream << "\n"; + stream << indent_str; + stream << " {"; + stream << "\n"; + stream << indent_str; + stream << " fprintf (stderr, \"%s: "; + generate_string (option_descr, stream, indent + indent_str.length ()); + stream << " option required%s\\n\", "; + generate_string (package_var_name, stream, indent + indent_str.length ()); + stream << ", (additional_error ? additional_error : \"\"));"; + stream << "\n"; + stream << indent_str; + stream << " error = 1;"; + stream << "\n"; + stream << indent_str; + stream << " }"; + stream << "\n"; + stream << indent_str; + stream << "\n"; + stream << indent_str; + } +}