@Override
    public Node toNode() {
        return Node.objectNode()
                .withMember("state", Node.from(state.toString()))
                .withMember("matcher", matcher.toNode());
    }
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