original_docstring: 
          Perform a DNS lookup/requests.
  
          :param str subject: The subject we are working with.
          :param bool complete: Tell us to return as many result as possible.
          :param bool tcp: Tell us to use TCP for query.
  
          :return:
              A dict with following index if the given subject is not registered into the
              given DNS server. (More likely local subjects).
  
                  ::
  
                      {
                          "hostname": "",
                          "aliases": [],
                          "ips": []
                      }
  
              A dict with following index for everything else (and if found).
  
                  ::
  
                      {
                          "nameservers: [],
                          "A": [],
                          "AAAA": [],
                          "CNAME": [],
                          "DNAME": [],
                          "MX": [],
                          "NS": [],
                          "TXT": [],
                          "PTR": []
                      }
  
          :rtype: dict
          :raise ValueError: When a non string :code:`subject` is given.
          
docstring: Perform a DNS lookup/requests.
docstring_tokens: Perform a DNS lookup / requests .
code: def request(self, subject, complete=False, tcp=None):  # pragma: no cover
          """
          Perform a DNS lookup/requests.
  
          :param str subject: The subject we are working with.
          :param bool complete: Tell us to return as many result as possible.
          :param bool tcp: Tell us to use TCP for query.
  
          :return:
              A dict with following index if the given subject is not registered into the
              given DNS server. (More likely local subjects).
  
                  ::
  
                      {
                          "hostname": "",
                          "aliases": [],
                          "ips": []
                      }
  
              A dict with following index for everything else (and if found).
  
                  ::
  
                      {
                          "nameservers: [],
                          "A": [],
                          "AAAA": [],
                          "CNAME": [],
                          "DNAME": [],
                          "MX": [],
                          "NS": [],
                          "TXT": [],
                          "PTR": []
                      }
  
          :rtype: dict
          :raise ValueError: When a non string :code:`subject` is given.
          """
  
          if not subject or not isinstance(subject, str):
              raise ValueError(f"<subject> must be of type {str} and not empty.")
  
          if tcp is None:
              tcp = self.tcp
  
          result = {}
  
          if not PyFunceble.Check(subject).is_ip():
              # We are looking for something which is not an IPv4 or IPv6.
  
              temp_result = self.__request_not_ip(subject, complete=complete, tcp=tcp)
  
              if isinstance(temp_result, dict):
                  result.update(temp_result)
          else:
              # We are working with something which is an IPv4 or IPv6.
  
              temp_result = self.__request_ip(subject, tcp=tcp)
  
              if isinstance(temp_result, dict):
                  result.update(temp_result)
  
          return result
code_tokens: def request ( self , subject , complete = False , tcp = None ) : if not subject or not isinstance ( subject , str ) : raise ValueError ( f"<subject> must be of type {str} and not empty." ) if tcp is None : tcp = self . tcp result = { } if not PyFunceble . Check ( subject ) . is_ip ( ) : temp_result = self . __request_not_ip ( subject , complete = complete , tcp = tcp ) if isinstance ( temp_result , dict ) : result . update ( temp_result ) else : temp_result = self . __request_ip ( subject , tcp = tcp ) if isinstance ( temp_result , dict ) : result . update ( temp_result ) return result
short_docstring: Perform a DNS lookup/requests.
short_docstring_tokens: Perform a DNS lookup / requests .
comment: # pragma: no cover$SEP$"""
          Perform a DNS lookup/requests.
  
          :param str subject: The subject we are working with.
          :param bool complete: Tell us to return as many result as possible.
          :param bool tcp: Tell us to use TCP for query.
  
          :return:
              A dict with following index if the given subject is not registered into the
              given DNS server. (More likely local subjects).
  
                  ::
  
                      {
                          "hostname": "",
                          "aliases": [],
                          "ips": []
                      }
  
              A dict with following index for everything else (and if found).
  
                  ::
  
                      {
                          "nameservers: [],
                          "A": [],
                          "AAAA": [],
                          "CNAME": [],
                          "DNAME": [],
                          "MX": [],
                          "NS": [],
                          "TXT": [],
                          "PTR": []
                      }
  
          :rtype: dict
          :raise ValueError: When a non string :code:`subject` is given.
          """$SEP$# We are looking for something which is not an IPv4 or IPv6.$SEP$# We are working with something which is an IPv4 or IPv6.