Class: TokyoMetro::Static::StationsInTokyoMetro::Info

Inherits:
Object
  • Object
show all
Includes:
ClassNameLibrary::Static::StationsInTokyoMetro, Modules::Common::ToFactory::Generate::Info, Modules::Static::GetName
Defined in:
lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb

Overview

個別の駅の情報(名称、管理事業者など)を扱うクラス

駅施設の ID に関するメソッド collapse

駅名に関するメソッド collapse

管理する鉄道事業者に関するメソッド collapse

検索時に想定される誤った入力に関するメソッド collapse

Constructor collapse

インスタンスの基本的な情報を取得するメソッド collapse

Methods included from Modules::Static::GetName

#css_class_name, #name_en_inspect, #name_hira_inspect, #name_ja_inspect

Constructor Details

#initialize(same_as, station_facility_custom, station_facility_custom_alias, name_ja, name_hira, name_in_system, name_en, administrator, other_operator) ⇒ Info

Constructor

Parameters:

  • same_as (String)

    キー

  • station_facility_custom (String)

    自分で設定した id

  • station_facility_custom_alias (String, ::Array or nil)

    自分で設定した id の別名

  • name_ja (String)

    駅名(日本語・漢字表記)

  • name_hira (String)

    駅名(日本語・ひらがな表記)

  • name_in_system (String)

    駅名(ローマ字表記 システム用)

  • name_en (String)

    駅名(ローマ字表記 表示用)

  • administrator (String, ::Array or nil)

    管理事業者

  • other_operator (String, ::Array or nil)

    その他の乗り入れ事業者



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 20

def initialize( same_as , station_facility_custom , station_facility_custom_alias ,
  name_ja , name_hira , name_in_system , name_en , administrator , other_operator )

  @same_as = same_as
  @same_as_custom = station_facility_custom
  @same_as_custom_alias = station_facility_custom_alias

  @name = name_ja
  @name_hira = name_hira
  @name_in_system = name_in_system
  @name_en = name_en

  @administrator = set_operator_name( administrator )
  @other_operator = set_operator_name( other_operator )

  @invalid_names_hira = set_invalid_names_hira
  # @invalid_names = set_invalid_names
  @regexp_of_invalid_inputs = set_regexp_of_invalid_inputs
end

Instance Attribute Details

#administrator::Array <TokyoMetro::Static::Operator::Info> (readonly)

Returns 管理事業者.

Returns:



68
69
70
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 68

def administrator
  @administrator
end

#invalid_names_hira::Array <String> (readonly)

Returns 誤った文字列(ひらがな).

Returns:

  • (::Array <String>)

    誤った文字列(ひらがな)



76
77
78
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 76

def invalid_names_hira
  @invalid_names_hira
end

#nameString (readonly)

Returns 駅名(日本語・漢字表記).

Returns:

  • (String)

    駅名(日本語・漢字表記)



54
55
56
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 54

def name
  @name
end

#name_enString (readonly)

Returns 駅名(ローマ字表記 表示用).

Returns:

  • (String)

    駅名(ローマ字表記 表示用)



63
64
65
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 63

def name_en
  @name_en
end

#name_hiraString (readonly)

Returns 駅名(日本語・ひらがな表記).

Returns:

  • (String)

    駅名(日本語・ひらがな表記)



57
58
59
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 57

def name_hira
  @name_hira
end

#name_in_systemString (readonly)

Returns 駅名(ローマ字表記 システム用).

Returns:

  • (String)

    駅名(ローマ字表記 システム用)



60
61
62
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 60

def name_in_system
  @name_in_system
end

#other_operator::Array <TokyoMetro::Static::Operator::Info> (readonly)

Returns その他の乗り入れ事業者.

Returns:



71
72
73
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 71

def other_operator
  @other_operator
end

#regexp_of_invalid_inputs::Array <Regexp> (readonly)

Returns 誤った文字列(漢字・正規表現).

Returns:

  • (::Array <Regexp>)

    誤った文字列(漢字・正規表現)



79
80
81
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 79

def regexp_of_invalid_inputs
  @regexp_of_invalid_inputs
end

#same_asString (readonly)

Returns 駅施設の ID キー.

Returns:

  • (String)

    駅施設の ID キー



43
44
45
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 43

def same_as
  @same_as
end

#same_as_customString (readonly)

Returns 自分で設定した駅施設の ID キー.

Returns:

  • (String)

    自分で設定した駅施設の ID キー



46
47
48
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 46

def same_as_custom
  @same_as_custom
end

#same_as_custom_aliasString or ::Array (readonly)

Returns 自分で設定した駅施設の ID キー(別名).

Returns:

  • (String or ::Array)

    自分で設定した駅施設の ID キー(別名)



49
50
51
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 49

def same_as_custom_alias
  @same_as_custom_alias
end

Instance Method Details

#<=>(others) ⇒ Integer

インスタンスの比較に用いるメソッド

Returns:

  • (Integer)


85
86
87
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 85

def <=>( others )
  @same_as <=> others.same_as
end

#to_s(indent = 0) ⇒ String

インスタンスの情報を文字列にして返すメソッド

Returns:

  • (String)


91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/tokyo_metro/static/stations_in_tokyo_metro/info.rb', line 91

def to_s( indent = 0 )
  self.instance_variables.map { |v|
    k = v.to_s.gsub( /\A\@/ , "" ).ljust(32)
    val = self.instance_variable_get(v)

    case v
    when :@administrator , :@other_operator
      val = val.map( &:same_as ).join("")
    else
      if val.instance_of?( ::Array )
        val = val.map( &:to_s ).join("")
      else
        val = val.to_s
      end
    end

    " " * indent + k + val
  }.join( "\n" )
end