|
594 | 594 | "text/markdown": [
|
595 | 595 | "---\n",
|
596 | 596 | "\n",
|
597 |
| - "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L104){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 597 | + "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L105){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
598 | 598 | "\n",
|
599 | 599 | "### get_class\n",
|
600 | 600 | "\n",
|
|
606 | 606 | "text/plain": [
|
607 | 607 | "---\n",
|
608 | 608 | "\n",
|
609 |
| - "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L104){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 609 | + "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L105){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
610 | 610 | "\n",
|
611 | 611 | "### get_class\n",
|
612 | 612 | "\n",
|
|
784 | 784 | "text/markdown": [
|
785 | 785 | "---\n",
|
786 | 786 | "\n",
|
787 |
| - "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L148){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 787 | + "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L149){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
788 | 788 | "\n",
|
789 | 789 | "#### ignore_exceptions\n",
|
790 | 790 | "\n",
|
|
795 | 795 | "text/plain": [
|
796 | 796 | "---\n",
|
797 | 797 | "\n",
|
798 |
| - "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L148){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
| 798 | + "[source](https://github.com/fastai/fastcore/blob/master/fastcore/basics.py#L149){target=\"_blank\" style=\"float:right; font-size:smaller\"}\n", |
799 | 799 | "\n",
|
800 | 800 | "#### ignore_exceptions\n",
|
801 | 801 | "\n",
|
|
854 | 854 | "outputs": [],
|
855 | 855 | "source": [
|
856 | 856 | "#|export\n",
|
| 857 | + "def _risinstance(types, obj):\n", |
| 858 | + " if any(isinstance(t,str) for t in types):\n", |
| 859 | + " return any(t.__name__ in types for t in type(obj).__mro__)\n", |
| 860 | + " return isinstance(obj, types)\n", |
| 861 | + "\n", |
857 | 862 | "def risinstance(types, obj=None):\n",
|
858 | 863 | " \"Curried `isinstance` but with args reversed\"\n",
|
859 | 864 | " types = tuplify(types)\n",
|
860 |
| - " if obj is None: return partial(risinstance,types)\n", |
861 |
| - " if any(isinstance(t,str) for t in types):\n", |
862 |
| - " return any(t.__name__ in types for t in type(obj).__mro__)\n", |
863 |
| - " return isinstance(obj, types)" |
| 865 | + " if obj is None: return partial(_risinstance,types)\n", |
| 866 | + " return _risinstance(types, obj)" |
864 | 867 | ]
|
865 | 868 | },
|
866 | 869 | {
|
|
871 | 874 | "source": [
|
872 | 875 | "assert risinstance(int, 1)\n",
|
873 | 876 | "assert not risinstance(str, 0)\n",
|
874 |
| - "assert risinstance(int)(1)" |
| 877 | + "assert risinstance(int)(1)\n", |
| 878 | + "assert not risinstance(int)(None)" |
875 | 879 | ]
|
876 | 880 | },
|
877 | 881 | {
|
|
0 commit comments