File: //lib/python3/dist-packages/twisted/trial/_dist/test/__pycache__/matchers.cpython-312.pyc
�
Ϫ�f� � � � d Z g d�ZddlmZmZmZmZmZ ddlm Z m
Z
mZmZm
Z
mZ ddlmZ ddlmZ ddlmZ ddlmZ dd lmZ dd
lmZ ed� Z G d� d
ee � Z edee �� Z ed� ed� ed� ed� ed� ed� fdee dee dee dee dee dee dee fd�Z G d� deee � Z G d� deee � Zdee dee fd�Z!de"de"deeee"e"e#ee ee f fd �Z$y!)"z5
Hamcrest matchers useful throughout the test suite.
)�matches_result�HasSum�IsSequenceOf� )�Any�List�Sequence�Tuple�TypeVar)�contains_exactly�contains_string�equal_to�
has_length�has_properties�instance_of)�BaseMatcher)�AllOf)�Description)�Matcher)�Protocol)�Failure�Tc � � e Zd ZdZdedefd�Zy)� Semigroupz�
A type with an associative binary operator.
Common examples of a semigroup are integers with addition and strings with
concatenation.
�other�returnc � � y)zF
This must be associative: a + (b + c) == (a + b) + c
N� )�selfr s �C/usr/lib/python3/dist-packages/twisted/trial/_dist/test/matchers.py�__add__zSemigroup.__add__+ s � � N)�__name__�
__module__�__qualname__�__doc__r r r r! r r r # s � ���Q� �1� r! r �S)�bound� successes�errors�failures�skips�expectedFailures�unexpectedSuccessesr c �&