Your IP : 3.135.249.76
�
^
bc @ sV d Z d d l Z d g Z e j d � Z d � Z d � Z e d k rR e � n d S( s!
Generic dylib path manipulation
i����Nt
dylib_infos� (?x)
(?P<location>^.*)(?:^|/)
(?P<name>
(?P<shortname>\w+?)
(?:\.(?P<version>[^._]+))?
(?:_(?P<suffix>[^._]+))?
\.dylib$
)
c C s# t j | � } | s d S| j � S( s1
A dylib name can take one of the following four forms:
Location/Name.SomeVersion_Suffix.dylib
Location/Name.SomeVersion.dylib
Location/Name_Suffix.dylib
Location/Name.dylib
returns None if not found or a mapping equivalent to:
dict(
location='Location',
name='Name.SomeVersion_Suffix.dylib',
shortname='Name',
version='SomeVersion',
suffix='Suffix',
)
Note that SomeVersion and Suffix are optional and may be None
if not present.
N( t DYLIB_REt matcht Nonet groupdict( t filenamet is_dylib( ( s: /opt/alt/python27/lib64/python2.7/ctypes/macholib/dylib.pyR s c C s d d d d d d � } t d � d k s0 t � t d � d k sH t � t d � | d d d � k sl t � t d � | d d d d
d �k s� t � t d � | d d
d d � k s� t � t d � | d d d d � k s� t � t d � | d d d d d � k st � d S( Nc S s% t d | d | d | d | d | � S( Nt locationt namet shortnamet versiont suffix( t dict( R R R R
R ( ( s: /opt/alt/python27/lib64/python2.7/ctypes/macholib/dylib.pyt d. s s completely/invalids completely/invalide_debugs P/Foo.dylibt Ps Foo.dylibt Foos P/Foo_debug.dylibs Foo_debug.dylibR t debugs
P/Foo.A.dylibs Foo.A.dylibt As P/Foo_debug.A.dylibs Foo_debug.A.dylibt Foo_debugs P/Foo.A_debug.dylibs Foo.A_debug.dylib( R R t AssertionError( R
( ( s: /opt/alt/python27/lib64/python2.7/ctypes/macholib/dylib.pyt test_dylib_info- s $*''t __main__( t __doc__t ret __all__t compileR R R t __name__( ( ( s: /opt/alt/python27/lib64/python2.7/ctypes/macholib/dylib.pyt <module> s