~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/option.py

  • Committer: Aaron Bentley
  • Date: 2006-08-03 23:48:01 UTC
  • mto: This revision was merged to the branch mainline in revision 1934.
  • Revision ID: aaron.bentley@utoronto.ca-20060803234801-4ccdb89a21a61209
Fix man page generation

Show diffs side-by-side

added added

removed removed

Lines of Context:
122
122
        self.default = None
123
123
 
124
124
    def python_name(self):
 
125
        """Conver a name with spaces and caps to a python variable name"""
125
126
        return self.name.lower().replace(' ', '_')
126
127
 
127
128
    def add_option(self, parser, short_name):
142
143
    def _optparse_callback(self, option, opt, value, parser, evalue):
143
144
        setattr(parser.values, option.dest, self.factory(evalue))
144
145
 
 
146
    def iter_switches(self):
 
147
        """Iterate through the list of switches provided by the option
 
148
        
 
149
        :return: an iterator of (name, short_name, argname, help)
 
150
        """
 
151
        return ((n, None, None, h) for n, h in self.choices)
 
152
 
145
153
 
146
154
class Option(object):
147
155
    """Description of a command line option"""
217
225
    def _optparse_callback(self, option, opt, value, parser):
218
226
        setattr(parser.values, self.name, self.type(value))
219
227
 
 
228
    def iter_switches(self):
 
229
        """Iterate through the list of switches provided by the option
 
230
        
 
231
        :return: an iterator of (name, short_name, argname, help)
 
232
        """
 
233
        argname =  self.argname
 
234
        if argname is not None:
 
235
            argname = argname.upper()
 
236
        yield self.name, self.short_name(), argname, self.help
220
237
 
221
238
class OptionParser(optparse.OptionParser):
222
239
    """OptionParser that raises exceptions instead of exiting"""