gui/doc/ext/autosummary/__init__.py
def get_items(self, names):
        """Try to import the given names, and return a list of
        ``[(name, signature, summary_string, real_name), ...]``.
        """
        env = self.state.document.settings.env

        prefixes = get_import_prefixes_from_env(env)

        items = []

        max_item_chars = 50

        for name in names:
            display_name = name
            if name.startswith('~'):
                name = name[1:]
                display_name = name.split('.')[-1]

            try:
                real_name, obj, parent = import_by_name(name, prefixes=prefixes)
            except ImportError:
                self.warn('failed to import %s' % name)
                items.append((name, '', '', name))
                continue

            # NB. using real_name here is important, since Documenters
            #     handle module prefixes slightly differently
            documenter = get_documenter(obj, parent)(self, real_name)
            if not documenter.parse_name():
                self.warn('failed to parse name %s' % real_name)
                items.append((display_name, '', '', real_name))
                continue
            if not documenter.import_object():
                self.warn('failed to import object %s' % real_name)
                items.append((display_name, '', '', real_name))
                continue

            # -- Grab the signature

            sig = documenter.format_signature()
            if not sig:
                sig = ''
            else:
                max_chars = max(10, max_item_chars - len(display_name))
                sig = mangle_signature(sig, max_chars=max_chars)
                sig = sig.replace('*', r'\*')

            # -- Grab the summary

            doc = list(documenter.process_doc(documenter.get_doc()))

            while doc and not doc[0].strip():
                doc.pop(0)
            m = re.search(r"^([A-Z][^A-Z]*?\.\s)", " ".join(doc).strip())
            if m:
                summary = m.group(1).strip()
            elif doc:
                summary = doc[0].strip()
            else:
                summary = ''

            items.append((display_name, sig, summary, real_name))

        return items
def get_items(self, names):
        """Try to import the given names, and return a list of
        ``[(name, signature, summary_string, real_name), ...]``.
        """
        env = self.state.document.settings.env

        prefixes = get_import_prefixes_from_env(env)

        items = []

        max_item_chars = 50

        for name in names:
            display_name = name
            if name.startswith('~'):
                name = name[1:]
                display_name = name.split('.')[-1]

            try:
                real_name, obj, parent = import_by_name(name, prefixes=prefixes)
            except ImportError:
                self.warn('failed to import %s' % name)
                items.append((name, '', '', name))
                continue

            # NB. using real_name here is important, since Documenters
            #     handle module prefixes slightly differently
            documenter = get_documenter(obj, parent)(self, real_name)
            if not documenter.parse_name():
                self.warn('failed to parse name %s' % real_name)
                items.append((display_name, '', '', real_name))
                continue
            if not documenter.import_object():
                self.warn('failed to import object %s' % real_name)
                items.append((display_name, '', '', real_name))
                continue

            # -- Grab the signature

            sig = documenter.format_signature()
            if not sig:
                sig = ''
            else:
                max_chars = max(10, max_item_chars - len(display_name))
                sig = mangle_signature(sig, max_chars=max_chars)
                sig = sig.replace('*', r'\*')

            # -- Grab the summary

            doc = list(documenter.process_doc(documenter.get_doc()))

            while doc and not doc[0].strip():
                doc.pop(0)
            m = re.search(r"^([A-Z][^A-Z]*?\.\s)", " ".join(doc).strip())
            if m:
                summary = m.group(1).strip()
            elif doc:
                summary = doc[0].strip()
            else:
                summary = ''

            items.append((display_name, sig, summary, real_name))

        return items
def get_items ( self , names ) : env = self . state . document . settings . env prefixes = get_import_prefixes_from_env ( env ) items = [ ] max_item_chars = 50 for name in names : display_name = name if name . startswith ( '~' ) : name = name [ 1 : ] display_name = name . split ( '.' ) [ - 1 ] try : real_name , obj , parent = import_by_name ( name , prefixes = prefixes ) except ImportError : self . warn ( 'failed to import %s' % name ) items . append ( ( name , '' , '' , name ) ) continue # NB. using real_name here is important, since Documenters #     handle module prefixes slightly differently documenter = get_documenter ( obj , parent ) ( self , real_name ) if not documenter . parse_name ( ) : self . warn ( 'failed to parse name %s' % real_name ) items . append ( ( display_name , '' , '' , real_name ) ) continue if not documenter . import_object ( ) : self . warn ( 'failed to import object %s' % real_name ) items . append ( ( display_name , '' , '' , real_name ) ) continue # -- Grab the signature sig = documenter . format_signature ( ) if not sig : sig = '' else : max_chars = max ( 10 , max_item_chars - len ( display_name ) ) sig = mangle_signature ( sig , max_chars = max_chars ) sig = sig . replace ( '*' , r'\*' ) # -- Grab the summary doc = list ( documenter . process_doc ( documenter . get_doc ( ) ) ) while doc and not doc [ 0 ] . strip ( ) : doc . pop ( 0 ) m = re . search ( r"^([A-Z][^A-Z]*?\.\s)" , " " . join ( doc ) . strip ( ) ) if m : summary = m . group ( 1 ) . strip ( ) elif doc : summary = doc [ 0 ] . strip ( ) else : summary = '' items . append ( ( display_name , sig , summary , real_name ) ) return items
Try to import the given names, and return a list of
        ``[(name, signature, summary_string, real_name), ...]``.
Try to import the given names and return a list of [ ( name signature summary_string real_name ) ... ] .