~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/option.py

  • Committer: Matt Nordhoff
  • Date: 2009-04-04 02:50:01 UTC
  • mfrom: (4253 +trunk)
  • mto: This revision was merged to the branch mainline in revision 4256.
  • Revision ID: mnordhoff@mattnordhoff.com-20090404025001-z1403k0tatmc8l91
Merge bzr.dev, fixing conflicts.

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
 
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
17
# TODO: For things like --diff-prefix, we want a way to customize the display
18
18
# of the option argument.
136
136
 
137
137
class Option(object):
138
138
    """Description of a command line option
139
 
    
 
139
 
140
140
    :ivar _short_name: If this option has a single-letter name, this is it.
141
141
    Otherwise None.
142
142
    """
154
154
        """Make a new command option.
155
155
 
156
156
        :param name: regular name of the command, used in the double-dash
157
 
            form and also as the parameter to the command's run() 
 
157
            form and also as the parameter to the command's run()
158
158
            method (unless param_name is specified).
159
159
 
160
160
        :param help: help message displayed in command help
161
161
 
162
 
        :param type: function called to parse the option argument, or 
 
162
        :param type: function called to parse the option argument, or
163
163
            None (default) if this option doesn't take an argument.
164
164
 
165
165
        :param argname: name of option argument, if any
241
241
 
242
242
    def iter_switches(self):
243
243
        """Iterate through the list of switches provided by the option
244
 
        
 
244
 
245
245
        :return: an iterator of (name, short_name, argname, help)
246
246
        """
247
247
        argname =  self.argname
349
349
        if self._registry is None:
350
350
            self._registry = self._lazy_registry.get_obj()
351
351
        return self._registry
352
 
    
 
352
 
353
353
    @staticmethod
354
354
    def from_kwargs(name_, help=None, title=None, value_switches=False,
355
355
                    enum_switch=True, **kwargs):
502
502
# Declare the standard options
503
503
_standard_option('help', short_name='h',
504
504
                 help='Show help message.')
 
505
_standard_option('usage',
 
506
                 help='Show usage message and options.')
505
507
_standard_option('verbose', short_name='v',
506
508
                 help='Display more information.',
507
509
                 custom_callback=_verbosity_level_callback)