# Path: transmute_core/compat.py
# def getfullargspec(func):
# 
# Path: transmute_core/exceptions.py
# class InvalidTransmuteDefinition(TransmuteCoreException):
#     """
#     this exception is raised when an invalid configuration for
#     transmute is encountered
#     """


import attr
from ..compat import string_type
from ..exceptions import InvalidTransmuteDefinition


@attr.s
class Param(object):
    """a single parameter object."""

    argument_name = attr.ib()
    description = attr.ib(default="")
    # the actual argument object. this gets populated later.
    arginfo = attr.ib(default=None)

    def __or__(self, other):
        raise InvalidTransmuteDefinition(
            "unable to join a single parameter with any other object."
        )

    def values(self):
        return (self,)

    def __setitem__(self, key, value):

# Path: transmute_core/compat.py
# def getfullargspec(func):
# 
# Path: transmute_core/exceptions.py
# class InvalidTransmuteDefinition(TransmuteCoreException):
#     """
#     this exception is raised when an invalid configuration for
#     transmute is encountered
#     """


# Path: transmute_core/http_parameters/param_set.py
import attr
from ..compat import string_type
from ..exceptions import InvalidTransmuteDefinition



@attr.s
class Param(object):
    """a single parameter object."""

    argument_name = attr.ib()
    description = attr.ib(default="")
    # the actual argument object. this gets populated later.
    arginfo = attr.ib(default=None)

    def __or__(self, other):
        raise InvalidTransmuteDefinition(
            "unable to join a single parameter with any other object."
        )

    def values(self):
        return (self,)

    def __setitem__(self, key, value):

        raise InvalidTransmuteDefinition(