segram.nlp.grammar.grammar module
- class segram.nlp.grammar.grammar.GrammarNLP[source]
Bases:
GrammarAbstract base class for grammar NLP backends.
All grammar classes must be defined as slots classes. This is necessary for ensuring low-memory footprint and better computational efficiency. Even classes with no new slots need to declare
__slots__ = (). This requirement is checked during class construction. Other class-specific requirements of this sort as well as their related validation checks may be implemented on specialized grammar classes using the standard__init_subclass__interface. This allows abstract base classes further down the inheritance chain to check for more complex requirements as well as apply dynamic class customizations.