# Path: grappa/decorators.py
# def attribute(*args, **kw):
#     """
#     Registers a new attribute only operator function in the test engine.
# 
#     Arguments:
#         *args: variadic arguments.
#         **kw: variadic keyword arguments.
# 
#     Returns:
#         function
#     """
#     return operator(kind=Operator.Type.ATTRIBUTE, *args, **kw)


from ..decorators import attribute
# -*- coding: utf-8 -*-


@attribute(
    operators=(
        'to', 'has', 'have', 'satisfy', 'that', 'that_is',
        'satisfies', 'include', 'do', '_is', 'which', 'which_is'
    )
)
def be(ctx):
    """
    Semantic attributes providing chainable declarative DSL
    for assertions.
    """
    pass



# Path: grappa/decorators.py
# def attribute(*args, **kw):
#     """
#     Registers a new attribute only operator function in the test engine.
# 
#     Arguments:
#         *args: variadic arguments.
#         **kw: variadic keyword arguments.
# 
#     Returns:
#         function
#     """
#     return operator(kind=Operator.Type.ATTRIBUTE, *args, **kw)


# Path: grappa/operators/attributes.py
from ..decorators import attribute

# -*- coding: utf-8 -*-


@attribute(
    operators=(
        'to', 'has', 'have', 'satisfy', 'that', 'that_is',
        'satisfies', 'include', 'do', '_is', 'which', 'which_is'
    )
)
def be(ctx):
    """
    Semantic attributes providing chainable declarative DSL
    for assertions.
    """
    pass



@attribute(operators=(