<commit_before>module VoipApi

  # A VILocation defines data that is stored in our database for a location registered to a DID.
  # @attr [String] location_id ID generated by 911 provider (DASH) associated with the location
  # @attr [String] address1 Street and house number
  # @attr [String] address2 Any additional address information such as 'Apt 1' or 'STE 100'
  # @attr [String] city City or community Name
  # @attr [String] state Two letter state abbreviation
  # @attr [String] zip_code 5-digit ZIP code
  # @attr [String] plus_four 4-digit ZIP code extension
  # @attr [String] caller_name <NAME>
  # @attr [String] latitude Latitudinal Coordinates
  # @attr [String] longitude Longitudinal Coordinates
  # @attr [String] activated_time Date in which the location was provisioned
  # @attr [String] update_time Date in which the location was last updated
  # @attr [String] status_code GEOCODED or PROVISIONED. Old locations may be VERIFIED or UNVERIFIED
  # @attr [String] status_description Describes the status code
  # @see VoipApi::API::X911Request#get_locations
  class VILocation
    # TODO: include comparable

    attr_accessor :location_id, :address1, :address2, :city, :state, :zip_code, :plus_four, :caller_name, :latitude, :longitude, :activated_time, :update_time, :status_code, :status_description

    # @!visibility private
    def initialize(hashie_params={})
      # Setup all our attributes if we respond to it.
      hashie_params.each do |k, v|
        instance_variable_set("@#{k}", v) unless v.nil?
      end
    end

    # TOOD: have them sort by location_id ?

    # Describes the attribute passed in
    # @param attribute [Symbol] A symbol representing the attribute for which you desire a description of
    def self.description(attribute)
      case attribute
      when :location_id
        "ID generated by 911 provider (DASH) associated with the location"
      when :address1
        "Street and house number"
      when :address2
        "Any additional address information such as 'Apt 1' or 'STE 100'"
      when :city
        "City or community Name"
      when :state
        "Two letter state abbreviation"
      when :zip_code
        "5-digit ZIP code"
      when :plus_four
        "4-digit ZIP code extension"
      when :caller_name
        "<NAME>"
      when :latitude
        "Latitudinal Coordinates"
      when :longitude
        "Longitudinal Coordinates"
      when :activated_time
        "Date in which the location was provisioned"
      when :update_time
        "Date in which the location was last updated"
      when :status_code<commit_msg>Removes some TODOs that were messing up the YARD docs.<commit_after>module VoipApi

  # A VILocation defines data that is stored in our database for a location registered to a DID.
  # @attr [String] location_id ID generated by 911 provider (DASH) associated with the location
  # @attr [String] address1 Street and house number
  # @attr [String] address2 Any additional address information such as 'Apt 1' or 'STE 100'
  # @attr [String] city City or community Name
  # @attr [String] state Two letter state abbreviation
  # @attr [String] zip_code 5-digit ZIP code
  # @attr [String] plus_four 4-digit ZIP code extension
  # @attr [String] caller_name <NAME>
  # @attr [String] latitude Latitudinal Coordinates
  # @attr [String] longitude Longitudinal Coordinates
  # @attr [String] activated_time Date in which the location was provisioned
  # @attr [String] update_time Date in which the location was last updated
  # @attr [String] status_code GEOCODED or PROVISIONED. Old locations may be VERIFIED or UNVERIFIED
  # @attr [String] status_description Describes the status code
  # @see VoipApi::API::X911Request#get_locations
  class VILocation
    attr_accessor :location_id, :address1, :address2, :city, :state, :zip_code, :plus_four, :caller_name, :latitude, :longitude, :activated_time, :update_time, :status_code, :status_description

    # @!visibility private
    def initialize(hashie_params={})
      # Setup all our attributes if we respond to it.
      hashie_params.each do |k, v|
        instance_variable_set("@#{k}", v) unless v.nil?
      end
    end

    # Describes the attribute passed in
    # @param attribute [Symbol] A symbol representing the attribute for which you desire a description of
    def self.description(attribute)
      case attribute
      when :location_id
        "ID generated by 911 provider (DASH) associated with the location"
      when :address1
        "Street and house number"
      when :address2
        "Any additional address information such as 'Apt 1' or 'STE 100'"
      when :city
        "City or community Name"
      when :state
        "Two letter state abbreviation"
      when :zip_code
        "5-digit ZIP code"
      when :plus_four
        "4-digit ZIP code extension"
      when :caller_name
        "<NAME>"
      when :latitude
        "Latitudinal Coordinates"
      when :longitude
        "Longitudinal Coordinates"
      when :activated_time
        "Date in which the location was provisioned"
      when :update_time
        "Date in which the location was last updated"
      when :status_code
{'fraction_non_alphanumeric': 0.07286044718581342, 'fraction_numerical': 0.01040863531225906, 'mean_word_length': 3.299088649544325, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3838612', 'n_tokens_mistral': 1538, 'n_tokens_neox': 1450, 'n_words': 591}