Class: Hecks::Bluebook::MetaValidator::TranslationJudge

Inherits:
Object
  • Object
show all
Defined in:
lib/hecks/bluebook/meta_validator/translation_judge.rb

Overview

Offers a built translation (a translations/*.bluebook edge, Hecks.data_translation's own real, established file convention — there is no separate .translation extension) to the language that describes translations.

A sibling of a bluebook again, the same shape PortJudge/ AdapterJudge already are — its own file, its own door, judged through its own self-hosted language (translation.bluebook) rather than left as plain Ruby structs nothing checks. Walks the WHOLE built translation in one pass — the top-level Declare/ Retire commands, then every nested aggregate's own Declare plus one Add* command per rule it carries — the same "one judge, every nested record" shape WorldJudge already gives Wiring. Field names throughout read lib/hecks/bluebook/translation.rb's own real struct/class definitions directly, not the DSL builder's own local parameter names (move(old_path, to:)'s old_path reads back as the struct's own from). Whole-project table- unification survey, item #13's remaining builders.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(translation) ⇒ TranslationJudge

Returns a new instance of TranslationJudge.



25
26
27
28
29
30
# File 'lib/hecks/bluebook/meta_validator/translation_judge.rb', line 25

def initialize(translation)
  @translation = translation
  @refusals    = []
  @runtime     = MetaValidator.fresh_runtime
  judge!
end

Instance Attribute Details

#refusalsObject (readonly)

Returns the value of attribute refusals.



23
24
25
# File 'lib/hecks/bluebook/meta_validator/translation_judge.rb', line 23

def refusals
  @refusals
end