make Base classes more based in python
#671
- Author
- socdev
- Created
- Feb. 12, 2023, 11:19 p.m.
- Expires
- Never
- Size
- 412 bytes
- Hits
- 15
- Syntax
- Python
- Private
- ✗ No
# library.py
class BaseMeta(type):
def __new__(cls, name, bases, body):
if not "bar" in body:
raise TypeError("derived class must implement a bar() function")
return super().__new__(cls, name, bases, body)
class Base(metaclass=BaseMeta):
def foo(self):
# bar() function gets implemeted by child class
return self.bar()