add MacOption, remove UnicodeOption

This commit is contained in:
Emmanuel Garette 2019-12-02 10:39:10 +01:00
parent 358a49c0e2
commit b6c11c08db
3 changed files with 35 additions and 7 deletions

View file

@ -10,7 +10,7 @@ from .choiceoption import ChoiceOption
from .booloption import BoolOption
from .intoption import IntOption
from .floatoption import FloatOption
from .stroption import StrOption, UnicodeOption, RegexpOption
from .stroption import StrOption, RegexpOption
from .ipoption import IPOption
from .portoption import PortOption
from .networkoption import NetworkOption
@ -23,13 +23,14 @@ from .usernameoption import UsernameOption, GroupnameOption
from .dateoption import DateOption
from .filenameoption import FilenameOption
from .passwordoption import PasswordOption
from .macoption import MACOption
__all__ = ('Leadership', 'OptionDescription', 'DynOptionDescription',
'SynDynOptionDescription', 'SynDynLeadership', 'Option', 'SymLinkOption',
'SynDynOption', 'ChoiceOption', 'BoolOption', 'DateOption',
'IntOption', 'FloatOption', 'StrOption', 'UnicodeOption',
'IntOption', 'FloatOption', 'StrOption',
'IPOption', 'PortOption', 'NetworkOption', 'NetmaskOption',
'BroadcastOption', 'DomainnameOption', 'EmailOption', 'URLOption',
'UsernameOption', 'GroupnameOption', 'FilenameOption', 'PasswordOption', 'submulti',
'RegexpOption')
'RegexpOption', 'MACOption')

View file

@ -0,0 +1,31 @@
# -*- coding: utf-8 -*-
# Copyright (C) 2020 Team tiramisu (see AUTHORS for all contributors)
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by the
# Free Software Foundation, either version 3 of the License, or (at your
# option) any later version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
# details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
# The original `Config` design model is unproudly borrowed from
# the rough pypy's guys: http://codespeak.net/svn/pypy/dist/pypy/config/
# the whole pypy projet is under MIT licence
# ____________________________________________________________
import re
from ..i18n import _
from .stroption import RegexpOption
class MACOption(RegexpOption):
__slots__ = tuple()
_regexp = re.compile(r"^([0-9A-Fa-f]{2}[:]){5}([0-9A-Fa-f]{2})$")
_type = 'macaddress'
_display_name = _('mac address')

View file

@ -38,10 +38,6 @@ class StrOption(Option):
raise ValueError()
#UnicodeOption is same as StrOption
UnicodeOption = StrOption
class RegexpOption(StrOption):
__slots__ = tuple()