function writable(): self {
    if (!$this->hasFlag('directory') && !$this->hasFlag('file'))
      throw new \BadMethodCallException('This assertion is not a file or directory one.');

    return $this->expect($this->target, isWritable());
  }