public static function check($name, $user, $request, $options = []) {
		if (($config = static::_config($name)) === null) {
			throw new ConfigException("Configuration `{$name}` has not been defined.");
		}
		$filter = function($self, $params) use ($name) {
			$user = $params['user'];
			$request = $params['request'];
			$options = $params['options'];
			return $self::adapter($name)->check($user, $request, $options);
		};
		$params = compact('user', 'request', 'options');
		return static::_filter(__FUNCTION__, $params, $filter, (array) $config['filters']);
	}