diff options
Diffstat (limited to 'docs/refman/generatorbase.py')
| -rw-r--r-- | docs/refman/generatorbase.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/docs/refman/generatorbase.py b/docs/refman/generatorbase.py index 517c59262..e4041747b 100644 --- a/docs/refman/generatorbase.py +++ b/docs/refman/generatorbase.py @@ -15,7 +15,7 @@ from abc import ABCMeta, abstractmethod import typing as T -from .model import ReferenceManual, Function, Object, ObjectType, NamedObject +from .model import ReferenceManual, Function, Method, Object, ObjectType, NamedObject _N = T.TypeVar('_N', bound=NamedObject) @@ -37,7 +37,11 @@ class GeneratorBase(metaclass=ABCMeta): @staticmethod def sorted_and_filtered(raw: T.List[_N]) -> T.List[_N]: - return sorted([x for x in raw if not x.hidden], key=lambda x: x.name) + def key_fn(fn: Function) -> str: + if isinstance(fn, Method): + return f'1_{fn.obj.name}.{fn.name}' + return f'0_{fn.name}' + return sorted([x for x in raw if not x.hidden], key=key_fn) @property def functions(self) -> T.List[Function]: |
