module Kajian::FungsiBantu
Public Instance Methods
adapter_ke_simbol(kelas_adapter)
click to toggle source
Konversi dari kelas adapter ke simbol. Misal:
Kajian::Adapter::JadwalKajian ke :jadwal_kajian
# File lib/kajian/fungsi_bantu.rb, line 6 def adapter_ke_simbol(kelas_adapter) kelas_adapter.name .sub(/(\w+::)+/, '') .gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2') .gsub(/([a-z\d])([A-Z])/, '\1_\2') .tr("-", "_") .downcase .to_sym end
simbol_ke_adapter(simbol)
click to toggle source
Konversi dari simbol ke kelas adapter. Misal:
:jadwal_kajian ke Kajian::Adapter::JadwalKajian
# File lib/kajian/fungsi_bantu.rb, line 19 def simbol_ke_adapter(simbol) nama_adapter = simbol.to_s .sub(/^[a-z\d]*/) { |match| match.capitalize } .gsub!(/(?:_)([a-z\d]*)/i) {"#{$1.capitalize}"} Kernel.const_get("Kajian::Adapter::#{nama_adapter}") end