Upload dataclass.py with huggingface_hub
Browse files- dataclass.py +7 -5
dataclass.py
CHANGED
|
@@ -312,15 +312,17 @@ class Dataclass(metaclass=DataclassMeta):
|
|
| 312 |
allowing checks and alterations to be made at the time of class creation, providing more control.
|
| 313 |
|
| 314 |
Example:
|
| 315 |
-
|
|
|
|
|
|
|
| 316 |
class Parent(Dataclass):
|
| 317 |
-
final_field: int = FinalField(1)
|
| 318 |
required_field: str = RequiredField()
|
| 319 |
also_required_field: float
|
| 320 |
abstract_field: int = AbstractField()
|
| 321 |
|
| 322 |
class Child(Parent):
|
| 323 |
-
abstract_field = 3
|
| 324 |
required_field = Field(name="required_field", default="provided", type=str)
|
| 325 |
|
| 326 |
class Mixin(Dataclass):
|
|
@@ -330,9 +332,9 @@ class Dataclass(metaclass=DataclassMeta):
|
|
| 330 |
pass
|
| 331 |
|
| 332 |
grand_child = GrandChild()
|
| 333 |
-
|
| 334 |
-
```
|
| 335 |
|
|
|
|
| 336 |
"""
|
| 337 |
|
| 338 |
__allow_unexpected_arguments__ = False
|
|
|
|
| 312 |
allowing checks and alterations to be made at the time of class creation, providing more control.
|
| 313 |
|
| 314 |
Example:
|
| 315 |
+
.. highlight:: python
|
| 316 |
+
.. code-block:: python
|
| 317 |
+
|
| 318 |
class Parent(Dataclass):
|
| 319 |
+
final_field: int = FinalField(1) # this field cannot be overridden
|
| 320 |
required_field: str = RequiredField()
|
| 321 |
also_required_field: float
|
| 322 |
abstract_field: int = AbstractField()
|
| 323 |
|
| 324 |
class Child(Parent):
|
| 325 |
+
abstract_field = 3 # now once overridden, this is no longer abstract
|
| 326 |
required_field = Field(name="required_field", default="provided", type=str)
|
| 327 |
|
| 328 |
class Mixin(Dataclass):
|
|
|
|
| 332 |
pass
|
| 333 |
|
| 334 |
grand_child = GrandChild()
|
| 335 |
+
logger.info(grand_child.to_dict())
|
|
|
|
| 336 |
|
| 337 |
+
...
|
| 338 |
"""
|
| 339 |
|
| 340 |
__allow_unexpected_arguments__ = False
|