@Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        } else if (!(o instanceof Acceptor)) {
            return false;
        }
        Acceptor acceptor = (Acceptor) o;
        return getState() == acceptor.getState() && Objects.equals(getMatcher(), acceptor.getMatcher());
    }
Creates an Acceptor from a {@link Node}.

@param node Node to create the Acceptor from.
@return Returns the created Acceptor.
@throws ExpectationNotMetException if the given Node is invalid.
smithy-waiters/src/main/java/software/amazon/smithy/waiters/Acceptor.java