Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
idna / lib / python2.7 / site-packages / netaddr / strategy / __init__.pyc
Size: Mime:
ó
®‹EYc@s˜dZddlZddlmZmZd„ZeƒZd„Zd„Z	d„Z
dd	„Zdd
„Zdd„Z
d„Zd
„Zd„ZdS(s)
Shared logic for various address types.
iÿÿÿÿN(t_ranget_is_strcCsƒg}tdddƒ}xdtdƒD]V}ddg}x*|D]"}d|d@||<|dL}q?W|jdj|ƒƒq%W|S(	s
    :return: A 256 element list containing 8-bit binary digit strings. The
        list index value is equivalent to its bit string value.
    iiÿÿÿÿiit01itN(RtrangetNonetappendtjoin(tlookupt
bits_per_bytetnumtbitsti((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt
bytes_to_bitss

cCslt|dƒstSt|ƒ|kr)tSd|d}x.|D]&}d|ko[|kns>tSq>WtS(s6
    :param words: A sequence of unsigned integer word values.

    :param word_size: Width (in bits) of each unsigned integer word value.

    :param num_words: Number of unsigned integer words expected.

    :return: ``True`` if word sequence is valid for this address type,
        ``False`` otherwise.
    t__iter__iii(thasattrtFalsetlentTrue(twordst	word_sizet	num_wordstmax_wordR((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pytvalid_words!s
cCs©d||d}d|ko)|knsGtdt|ƒƒ‚nd|d}g}x;t|ƒD]-}||@}|jt|ƒƒ||L}qhWtt|ƒƒS(sJ
    :param int_val: Unsigned integer to be divided into words of equal size.

    :param word_size: Width (in bits) of each unsigned integer word value.

    :param num_words: Number of unsigned integer words expected.

    :return: A tuple contain unsigned integer word values split according
        to provided arguments.
    iiisinteger out of bounds: %r!(t
IndexErrorthexRRtintttupletreversed(tint_valRRtmax_intRRt_tword((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pytint_to_words;s
cCspt|||ƒs%td|ƒ‚nd}x>tt|ƒƒD]*\}}|}|||>}||B}q>W|S(s5
    :param words: A sequence of unsigned integer word values.

    :param word_size: Width (in bits) of each unsigned integer word value.

    :param num_words: Number of unsigned integer words expected.

    :return: An unsigned integer that is equivalent to value represented
        by word sequence.
    s"invalid integer word sequence: %r!i(Rt
ValueErrort	enumerateR(RRRRRR
R ((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pytwords_to_intVsRcCsšt|ƒstS|dkr1|j|dƒ}nt|ƒ|krGtSd|d}y-dt|dƒkox|knrtSWntk
r•nXtS(sl
    :param bits: A network address in a delimited binary string format.

    :param width: Maximum width (in bits) of a network address (excluding
        delimiters).

    :param word_sep: (optional) character or string used to delimit word
        groups (default: '', no separator).

    :return: ``True`` if network address is valid, ``False`` otherwise.
    Riii(RRtreplaceRRRR"(Rtwidthtword_sepR((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt
valid_bitsms%
cCsSt|||ƒs%td|ƒ‚n|dkrF|j|dƒ}nt|dƒS(s¡
    :param bits: A network address in a delimited binary string format.

    :param width: Maximum width (in bits) of a network address (excluding
        delimiters).

    :param word_sep: (optional) character or string used to delimit word
        groups (default: '', no separator).

    :return: An unsigned integer that is equivalent to value represented
        by network address in readable binary form.
    s#invalid readable binary string: %r!Ri(R(R"R%R(RR&R'((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pytbits_to_ints

cCsÓg}xt|||ƒD]{}g}x)|rP|jt|d@ƒ|dL}q(W|jƒdj|ƒpqd|}d|||}|j|ƒqW|dk	rÆt|ƒsÆtd|ƒ‚qÆn|j|ƒS(s¯
    :param int_val: An unsigned integer.

    :param word_size: Width (in bits) of each unsigned integer word value.

    :param num_words: Number of unsigned integer words expected.

    :param word_sep: (optional) character or string used to delimit word
        groups (default: '', no separator).

    :return: A network address in a delimited binary string format that is
        equivalent in value to unsigned integer.
    iÿiRt0s#word separator is not a string: %r!(R!Rt
BYTES_TO_BITStreverseRRR"(RRRR't	bit_wordsR Rtbit_str((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pytint_to_bits£s	
cCsžt|ƒstS|jdƒs#tS|jddƒ}t|ƒ|krKtSd|d}y-dt|dƒko||knr…tSWntk
r™nXtS(s
    :param bin_val: A network address in Python's binary representation format
        ('0bxxx').

    :param width: Maximum width (in bits) of a network address (excluding
        delimiters).

    :return: ``True`` if network address is valid, ``False`` otherwise.
    t0bRiii(RRt
startswithR%RRRR"(tbin_valR&R((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt	valid_binÅs
%
cCsÁg}yt|ƒ}Wn{tk
r“|}x5|dkrc|d@}|jt|ƒ|dL}q/W|jƒdtjdddj|ƒƒ}nXt|dƒ|kr½t	d	|ƒ‚n|S(
sÚ
    :param int_val: An unsigned integer.

    :param width: Maximum allowed width (in bits) of a unsigned integer.

    :return: Equivalent string value in Python's binary representation format
        ('0bxxx').
    iiÿiR0s
^[0]+([01]+)$s\1Ris binary string out of bounds: %s!(
tbint	NameErrorRR+R,t_retsubRRR(RR&t
bin_tokensR2RR ((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt
int_to_binås	


&cCs;t||ƒs"td|ƒ‚nt|jddƒdƒS(s9
    :param bin_val: A string containing an unsigned integer in Python's binary
        representation format ('0bxxx').

    :param width: Maximum allowed width (in bits) of a unsigned integer.

    :return: An unsigned integer that is equivalent to value represented
        by Python binary string format.
    s%not a valid Python binary string: %r!R0Ri(R3R"RR%(R2R&((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt
bin_to_ints
(t__doc__treR6tnetaddr.compatRRR
R+RR!R$R(R)R/R3R9R:(((sN/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/__init__.pyt<module>s					 "