libspec

An object specification model for spec driven development

EXAMPLE_SPECIFICATION
err.py V0.1.0
class PreCond(Ctx):
    """Functions should start with preconditions about what should be
    true. There should be `assert` statments to enforce this"""

class GlobalMutableState(Ctx):
    """Broadly you should avoid global mutable state."""

class PostCond(Ctx):
    """Before a function returns, it should use assert statements to
    verify certain important properties are true"""


class DefensiveProgramming(PreCond, PostCond, GlobalMutableState):
    pass