Class: Ibex::RaccMigration::Harness

Inherits:
Object
  • Object
show all
Defined in:
lib/ibex/racc_migration/harness.rb,
sig/ibex/racc_migration/harness.rbs

Overview

Emits, but never executes, a subprocess-separated differential harness.

Constant Summary collapse

CLASS_NAME =

Signature:

  • Regexp

Returns:

  • (Regexp)
/\A[A-Z]\w*(?:::[A-Z]\w*)*\z/

Class Method Summary collapse

Class Method Details

.generate(class_name) ⇒ String

RBS:

  • (String class_name) -> String

Parameters:

  • class_name (String)

Returns:

  • (String)


11
12
13
14
15
# File 'lib/ibex/racc_migration/harness.rb', line 11

def self.generate(class_name)
  raise ArgumentError, "invalid parser class name #{class_name.inspect}" unless class_name.match?(CLASS_NAME)

  template.sub("__PARSER_CLASS_NAME__", class_name.dump)
end