mbt-gen 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mbt-gen.rb +16 -1
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a54d348906008ce6b4363e78fb932f411e716748d14c615bb1bba2e14aa1bc0e
4
- data.tar.gz: 1c6779aef3da52e98c909cc769c342ff4bdb59cdd674db4f0080093578fde366
3
+ metadata.gz: d73853b99bf4d38c5c621765537531713eca02dcf357d2b2c004514c66fa78f7
4
+ data.tar.gz: 99b8a8490a1a33662b5a044cb466fdb95875dfe2e1ba8f031065d6a58dc170c7
5
5
  SHA512:
6
- metadata.gz: c64276ea379dcac7af7200ac65e6ebfc60dc21a35cf53595dcacf9d5a0bb5bb7690fe711761720c4779cca8c14fd36b6124835e9a704689a156aed2b6b534203
7
- data.tar.gz: 77d97a37495b5acd8b95d1479ca3243398fa94c04b6d071d1bd7744fc0798839de49727b1078f4c32fe7eeaf518289741d8c04e4b1ef79440984877d3cbbf3cd
6
+ metadata.gz: 11787320c7d53d3f0d14686f0d1224daee62522e6298175a02c3c1ad11f30f8ed564526fa773599125b2ea9c5cffd647298ac50449495661ef5d5f3d078ba5ce
7
+ data.tar.gz: 45aef9d1c6c316aa145c1cc50a88319ae50390d676df64bb5abf7b86a5baf0612f19b27c347e44efeba1bf5c1f15c3f76e1e5fae0779f84df4145b13561ee92b
data/lib/mbt-gen.rb CHANGED
@@ -455,6 +455,12 @@ def resolve_field_path(path, relative_to_struct, prefix)
455
455
  if prefix
456
456
  result = "#{prefix}/#{result}"
457
457
  end
458
+ elsif field_def[:type] == :objlist then
459
+ current = nil
460
+ result = segment
461
+ if prefix
462
+ result = "#{prefix}/#{result}"
463
+ end
458
464
  end
459
465
  end
460
466
  return result
@@ -624,7 +630,16 @@ def translate_validation_rule_to_SMTLIB(rule, context_struct, prefix, config, op
624
630
  end
625
631
  "(or #{terms.join(" ")})"
626
632
  end
627
- .gsub(/LIST_VALUE_FIRST_ELEMENT\[[^\]]*\]/) do |m|
633
+ .gsub(/LIST_VALUE\[[^\]]*,[^\]]*\]/) do |m|
634
+ unless m =~ /LIST_VALUE\[([^\]]*),([^\]]*)\]/ then
635
+ raise RuntimeError.new("could not parse LIST_VALUE_FIRST_ELEMENT[...]: #{m.inspect} in validation rule #{rule_name}")
636
+ end
637
+ xpath = $1
638
+ index = Integer($2)
639
+ l = resolve_field_path(xpath, context_struct, prefix)
640
+ value_var_for_list(l, index)
641
+ end
642
+ .gsub(/LIST_VALUE_FIRST_ELEMENT\[[^\]]*\]/) do |m| # DEPRECATED! Please use LIST_VALUE[...] instead.
628
643
  unless m =~ /LIST_VALUE_FIRST_ELEMENT\[([^\]]*)\]/ then
629
644
  raise RuntimeError.new("could not parse LIST_VALUE_FIRST_ELEMENT[...]: #{m.inspect} in validation rule #{rule_name}")
630
645
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mbt-gen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - FM-enthusiast
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-28 00:00:00.000000000 Z
11
+ date: 2026-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri