Extension class¶
This is the reference for the main object Extension. It is optionally wrapped by
a Pluggable.
ravyn.Extension
¶
Extension(app=None, **kwargs)
Bases: ABC, ExtensionProtocol
Extension object is the one being used to add the logic that will originate
the pluggable in the application.
The Extension must implement the extend function.
Read more about the Extension and learn how to use it.
Example
from typing import Optional
from ravyn import Ravyn, Extension
from ravyn.types import DictAny
class MyExtension(Extension):
def __init__(self, app: Optional["Ravyn"] = None, **kwargs: "DictAny"):
super().__init__(app)
self.kwargs = kwargs
def extend(self, **kwargs: "DictAny") -> None:
'''
Function that should always be implemented when extending
the Extension class or a `NotImplementedError` is raised.
'''
# Do something here
| PARAMETER | DESCRIPTION |
|---|---|
app
|
An
TYPE:
|
**kwargs
|
Any additional kwargs needed.
TYPE:
|
Source code in ravyn/pluggables/base.py
116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 | |