Module: EU::LicenceValidator

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

Constant Summary collapse

WASM_PATH =
File.expand_path("../wasm/core.wasm", __dir__)
VERSION =
"0.1.19"

Class Method Summary collapse

Class Method Details

.valid?(plate, country_code) ⇒ Boolean Also known as: is_valid

Returns:

  • (Boolean)


27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/eu_licence_validator.rb', line 27

def valid?(plate, country_code)
  exports = @instance.exports

  p_ptr, p_len = write_string(exports, plate)
  c_ptr, c_len = write_string(exports, country_code)

  validate = exports["validate"].to_func
  dealloc = exports["dealloc"].to_func
  result = validate.call(p_ptr, p_len, c_ptr, c_len)
  dealloc.call(p_ptr)
  dealloc.call(c_ptr)
  result == 1
end