Module: ActiveRecord::ConnectionAdapters::Spanner::Quoting

Included in:
ActiveRecord::ConnectionAdapters::SpannerAdapter
Defined in:
lib/active_record/connection_adapters/spanner/quoting.rb

Instance Method Summary collapse

Instance Method Details

#_type_cast(value) ⇒ Object



52
53
54
55
56
57
58
59
# File 'lib/active_record/connection_adapters/spanner/quoting.rb', line 52

def _type_cast value
  case value
  when Array
    ActiveSupport::JSON.encode value
  else
    super
  end
end

#quote_column_name(name) ⇒ Object



29
30
31
# File 'lib/active_record/connection_adapters/spanner/quoting.rb', line 29

def quote_column_name name
  QUOTED_COLUMN_NAMES[name] ||= "`#{name.to_s.gsub '`', '``'}`".freeze
end

#quote_string(s) ⇒ Object



44
45
46
# File 'lib/active_record/connection_adapters/spanner/quoting.rb', line 44

def quote_string s
  s.gsub STR_ESCAPE_REGX, STR_ESCAPE_VALUES
end

#quote_table_name(name) ⇒ Object



33
34
35
# File 'lib/active_record/connection_adapters/spanner/quoting.rb', line 33

def quote_table_name name
  QUOTED_TABLE_NAMES[name] ||= "`#{name.to_s.gsub '.', '`.`'}`".freeze
end

#quoted_binary(value) ⇒ Object



48
49
50
# File 'lib/active_record/connection_adapters/spanner/quoting.rb', line 48

def quoted_binary value
  "b'#{value}'"
end