66:copyright: Copyright 2016 by Mark Story
77:license: BSD, see LICENSE for details.
88"""
9+
910import re
1011import inspect
1112
@@ -242,7 +243,7 @@ def handle_signature(self, sig, signode):
242243 else :
243244 add_module = True
244245 if name_prefix :
245- classname = classname .rstrip ('::' )
246+ classname = classname .rstrip ("::" )
246247 fullname = name_prefix + name
247248
248249 # Currently in a class, but not creating another class,
@@ -291,16 +292,17 @@ def handle_signature(self, sig, signode):
291292 signode += addnodes .desc_addname (name_prefix , name_prefix )
292293
293294 elif add_module and self .env .config .add_module_names :
294- if self .objtype == ' global' :
295- nodetext = ''
295+ if self .objtype == " global" :
296+ nodetext = ""
296297 signode += addnodes .desc_addname (nodetext , nodetext )
297298 else :
298299 namespace = self .options .get (
299- 'namespace' , self .env .temp_data .get ('php:namespace' ))
300+ "namespace" , self .env .temp_data .get ("php:namespace" )
301+ )
300302
301- if namespace and not self .env .temp_data .get (' php:in_class' , False ):
303+ if namespace and not self .env .temp_data .get (" php:in_class" , False ):
302304 nodetext = namespace + NS
303- signode += addnodes .desc_addname (nodetext , nodetext )
305+ signode += addnodes .desc_addname (nodetext , nodetext )
304306
305307 signode += addnodes .desc_name (name , name )
306308
@@ -621,10 +623,10 @@ def process_link(self, env, refnode, has_explicit_title, title, target):
621623 if not has_explicit_title :
622624 if title .startswith ("::" ):
623625 title = title [2 :]
624- target = target .lstrip ('~' ) # only has a meaning for the title
626+ target = target .lstrip ("~" ) # only has a meaning for the title
625627
626628 # If the first char is ~ don't display the leading namespace & class.
627- if title .startswith ('~' ):
629+ if title .startswith ("~" ):
628630 m = re .search (r"(?:.+[:]{2}|(?:.*?\\{1,2})+)?(.*)\Z" , title )
629631 if m :
630632 title = m .group (1 )
@@ -823,13 +825,17 @@ def resolve_xref(self, env, fromdocname, builder, typ, target, node, contnode):
823825 namespace = node .get ("php:namespace" )
824826 clsname = node .get ("php:class" )
825827 searchorder = node .hasattr ("refspecific" ) and 1 or 0
826- name , obj = self .find_obj (env , node , namespace , clsname , target , typ , searchorder )
828+ name , obj = self .find_obj (
829+ env , node , namespace , clsname , target , typ , searchorder
830+ )
827831 if not obj :
828832 return None
829833 else :
830834 return make_refnode (builder , fromdocname , obj [0 ], name , contnode , name )
831835
832- def find_obj (self , env , fromdocnode , namespace , classname , name , type , searchorder = 0 ):
836+ def find_obj (
837+ self , env , fromdocnode , namespace , classname , name , type , searchorder = 0
838+ ):
833839 """
834840 Find a PHP object for "name", using the given namespace and classname.
835841 """
@@ -840,42 +846,54 @@ def find_obj(self, env, fromdocnode, namespace, classname, name, type, searchord
840846 if not name :
841847 return None , None
842848
843- objects = self .data [' objects' ]
849+ objects = self .data [" objects" ]
844850
845851 newname = None
846852 if searchorder == 1 :
847- if namespace and classname and \
848- namespace + NS + classname + '::' + name in objects :
849- newname = namespace + NS + classname + '::' + name
853+ if (
854+ namespace
855+ and classname
856+ and namespace + NS + classname + "::" + name in objects
857+ ):
858+ newname = namespace + NS + classname + "::" + name
850859 elif namespace and namespace + NS + name in objects :
851860 newname = namespace + NS + name
852861 elif namespace and namespace + NS + name in objects :
853862 newname = namespace + NS + name
854- elif classname and classname + '::' + name in objects :
855- newname = classname + '.' + name
856- elif classname and classname + ' ::$' + name in objects :
857- newname = classname + ' ::$' + name
863+ elif classname and classname + "::" + name in objects :
864+ newname = classname + "." + name
865+ elif classname and classname + " ::$" + name in objects :
866+ newname = classname + " ::$" + name
858867 elif name in objects :
859868 newname = name
860869 else :
861870 if name in objects :
862871 newname = name
863- elif classname and classname + '::' + name in objects :
864- newname = classname + '::' + name
865- elif classname and classname + ' ::$' + name in objects :
866- newname = classname + ' ::$' + name
872+ elif classname and classname + "::" + name in objects :
873+ newname = classname + "::" + name
874+ elif classname and classname + " ::$" + name in objects :
875+ newname = classname + " ::$" + name
867876 elif namespace and namespace + NS + name in objects :
868877 newname = namespace + NS + name
869- elif namespace and classname and \
870- namespace + NS + classname + '::' + name in objects :
871- newname = namespace + NS + classname + '::' + name
872- elif namespace and classname and \
873- namespace + NS + classname + '::$' + name in objects :
874- newname = namespace + NS + classname + '::$' + name
878+ elif (
879+ namespace
880+ and classname
881+ and namespace + NS + classname + "::" + name in objects
882+ ):
883+ newname = namespace + NS + classname + "::" + name
884+ elif (
885+ namespace
886+ and classname
887+ and namespace + NS + classname + "::$" + name in objects
888+ ):
889+ newname = namespace + NS + classname + "::$" + name
875890 # special case: object methods
876- elif type in ('func' , 'meth' ) and '::' not in name and \
877- 'object::' + name in objects :
878- newname = 'object::' + name
891+ elif (
892+ type in ("func" , "meth" )
893+ and "::" not in name
894+ and "object::" + name in objects
895+ ):
896+ newname = "object::" + name
879897 if newname is None :
880898 return None , None
881899 return newname , objects [newname ]
0 commit comments