Module: PedantMysql2

Defined in:
lib/pedant_mysql2.rb,
lib/pedant_mysql2/version.rb

Constant Summary collapse

VERSION =
'1.4.0'

Class Method Summary collapse

Class Method Details

.capture_warningsObject



5
6
7
8
9
10
11
12
# File 'lib/pedant_mysql2.rb', line 5

def capture_warnings
  warnings = backup_warnings
  setup_capture
  yield
  captured_warnings
ensure
  restore_warnings(warnings)
end

.ignore(*matchers) ⇒ Object



22
23
24
# File 'lib/pedant_mysql2.rb', line 22

def ignore(*matchers)
  self.whitelist.concat(matchers.flatten)
end

.on_warningObject



36
37
38
# File 'lib/pedant_mysql2.rb', line 36

def on_warning
  Thread.current[:__pedant_mysql2_on_warning] || @_on_warning
end

.on_warning=(new_proc) ⇒ Object



40
41
42
# File 'lib/pedant_mysql2.rb', line 40

def on_warning=(new_proc)
  @_on_warning = new_proc
end

.raise_warnings!Object



14
15
16
# File 'lib/pedant_mysql2.rb', line 14

def raise_warnings!
  self.on_warning = nil
end

.silence_warnings!Object



18
19
20
# File 'lib/pedant_mysql2.rb', line 18

def silence_warnings!
  self.on_warning = lambda{ |warning| }
end

.warn(warning) ⇒ Object



26
27
28
29
30
31
32
33
34
# File 'lib/pedant_mysql2.rb', line 26

def warn(warning)
  return if ignored?(warning)

  if on_warning
    on_warning.call(warning)
  else
    raise warning
  end
end