tla-sbuilder 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (210) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +328 -0
  3. data/VERSION +1 -0
  4. data/bin/sbuilder.rb +5 -0
  5. data/lib/cli/cli-customer.rb +420 -0
  6. data/lib/cli/cli-example.rb +92 -0
  7. data/lib/cli/cli-pet.rb +767 -0
  8. data/lib/cli/cli-text.rb +226 -0
  9. data/lib/cli/cli.rb +298 -0
  10. data/lib/sbuilder.rb +52 -0
  11. data/lib/sbuilder/constants.rb +72 -0
  12. data/lib/sbuilder/controller.rb +798 -0
  13. data/lib/sbuilder/default-sbuilder.yaml +372 -0
  14. data/lib/sbuilder/domain.rb +124 -0
  15. data/lib/sbuilder/domain_cardinality.rb +37 -0
  16. data/lib/sbuilder/domain_value.rb +81 -0
  17. data/lib/sbuilder/exception.rb +27 -0
  18. data/lib/sbuilder/extension_loader.rb +721 -0
  19. data/lib/sbuilder/factory.rb +234 -0
  20. data/lib/sbuilder/model.rb +356 -0
  21. data/lib/sbuilder/mustache/template.rb +125 -0
  22. data/lib/sbuilder/mustache/template_reader.rb +206 -0
  23. data/lib/sbuilder/mustache/template_reader_context.rb +371 -0
  24. data/lib/sbuilder/param_set.rb +132 -0
  25. data/lib/sbuilder/param_set_db.rb +20 -0
  26. data/lib/sbuilder/param_set_def.rb +57 -0
  27. data/lib/sbuilder/param_set_if.rb +68 -0
  28. data/lib/sbuilder/param_set_loader.rb +77 -0
  29. data/lib/sbuilder/param_set_loader_swagger.rb +424 -0
  30. data/lib/sbuilder/param_set_step.rb +62 -0
  31. data/lib/sbuilder/param_sets.rb +54 -0
  32. data/lib/sbuilder/parameter.rb +97 -0
  33. data/lib/sbuilder/parameter_container.rb +72 -0
  34. data/lib/sbuilder/parameter_dom.rb +70 -0
  35. data/lib/sbuilder/parameter_ref.rb +71 -0
  36. data/lib/sbuilder/resolver.rb +78 -0
  37. data/lib/sbuilder/resolver_loader.rb +79 -0
  38. data/lib/sbuilder/resolver_loader_yaml.rb +103 -0
  39. data/lib/sbuilder/resolver_rule.rb +36 -0
  40. data/lib/sbuilder/resolver_rule_match.rb +55 -0
  41. data/lib/sbuilder/resolver_rule_ref.rb +37 -0
  42. data/lib/utils/hash_inject.rb +12 -0
  43. data/lib/utils/logger.rb +80 -0
  44. data/lib/utils/netio.rb +58 -0
  45. data/lib/utils/string_inject.rb +10 -0
  46. data/lib/utils/version.rb +13 -0
  47. data/mustache/cfg/const_def.mustache +8 -0
  48. data/mustache/cfg/const_run.mustache +3 -0
  49. data/mustache/cfg/invariant-infrastructure-service.mustache +4 -0
  50. data/mustache/cfg/macro_run.mustache +6 -0
  51. data/mustache/cfg/module_footer.mustache +0 -0
  52. data/mustache/cfg/module_header.mustache +7 -0
  53. data/mustache/data-model-dump.mustache +19 -0
  54. data/mustache/data-model-footer.mustache +5 -0
  55. data/mustache/data-model-header.mustache +16 -0
  56. data/mustache/definition_types.mustache +40 -0
  57. data/mustache/domains.mustache +20 -0
  58. data/mustache/domains_assign.mustache +22 -0
  59. data/mustache/domains_run.mustache +21 -0
  60. data/mustache/extend/extend_assumptions.mustache +7 -0
  61. data/mustache/extend/extend_const.mustache +5 -0
  62. data/mustache/extend/extend_implementation.mustache +9 -0
  63. data/mustache/extend/extend_invariant.mustache +7 -0
  64. data/mustache/extend/extend_invariant_cfg.mustache +7 -0
  65. data/mustache/extend/extend_macros.mustache +19 -0
  66. data/mustache/extend/extend_operations.mustache +9 -0
  67. data/mustache/extend/extend_state.mustache +9 -0
  68. data/mustache/infrastructure-service-init.mustache +36 -0
  69. data/mustache/infrastructure-service-variables.mustache +10 -0
  70. data/mustache/interface_processes.mustache +38 -0
  71. data/mustache/interface_stubs_dummy.mustache +13 -0
  72. data/mustache/interface_types.mustache +52 -0
  73. data/mustache/markdown-header.mustache +24 -0
  74. data/mustache/markdown-toc.mustache +13 -0
  75. data/mustache/name_definition_type.mustache +5 -0
  76. data/mustache/name_domain.mustache +5 -0
  77. data/mustache/name_domain_value.mustache +5 -0
  78. data/mustache/name_domain_value_prefix.mustache +5 -0
  79. data/mustache/name_interface_response_type.mustache +6 -0
  80. data/mustache/name_interface_type.mustache +6 -0
  81. data/mustache/name_parameter_definition.mustache +5 -0
  82. data/mustache/name_parameter_type.mustache +6 -0
  83. data/mustache/name_process.mustache +6 -0
  84. data/mustache/name_type_invariant.mustache +5 -0
  85. data/mustache/name_variable.mustache +6 -0
  86. data/mustache/operator-infrastructure-service.mustache +13 -0
  87. data/mustache/possibility/module_extends.mustache +1 -0
  88. data/mustache/possibility/module_footer.mustache +1 -0
  89. data/mustache/possibility/module_header.mustache +8 -0
  90. data/mustache/possibility/possibility_definition.mustache +12 -0
  91. data/mustache/possibility/possibility_directive.mustache +1 -0
  92. data/mustache/possibility/possility_setup.mustache +28 -0
  93. data/mustache/setup/module_footer.mustache +1 -0
  94. data/mustache/setup/module_header.mustache +9 -0
  95. data/mustache/setup/operator_run.mustache +7 -0
  96. data/mustache/setup/operator_tick.mustache +2 -0
  97. data/mustache/setup/steps_run.mustache +22 -0
  98. data/mustache/setup/steps_run_bind_rule.mustache +51 -0
  99. data/mustache/setup/steps_run_bind_set.mustache +37 -0
  100. data/mustache/setup/steps_run_parameterBind.mustache +80 -0
  101. data/mustache/setup/steps_run_parameterExact.mustache +79 -0
  102. data/mustache/state_type_invariant-infrastructure-service.mustache +49 -0
  103. data/mustache/state_type_invariant.mustache +17 -0
  104. data/mustache/state_type_invariant_cfg.mustache +18 -0
  105. data/mustache/state_variables.mustache +20 -0
  106. data/mustache/tla/const_def.mustache +5 -0
  107. data/mustache/tla/const_run.mustache +3 -0
  108. data/mustache/tla/macro-infrastructure-service.mustache +14 -0
  109. data/mustache/tla/macro_run.mustache +40 -0
  110. data/mustache/tla/module_footer.mustache +2 -0
  111. data/mustache/tla/module_header.mustache +9 -0
  112. data/mustache/tla/operator_run.mustache +8 -0
  113. data/mustache/tla/operators-infrastructure-service.mustache +12 -0
  114. data/mustache/tla/plc_define_footer.mustache +1 -0
  115. data/mustache/tla/plc_define_header.mustache +1 -0
  116. data/mustache/tla/plc_define_run.mustache +59 -0
  117. data/mustache/tla/plc_footer.mustache +2 -0
  118. data/mustache/tla/plc_header.mustache +2 -0
  119. data/mustache/tla/plc_run_state.mustache +12 -0
  120. data/mustache/tla/plc_tail.mustache +8 -0
  121. data/mustache/tla/plc_translation.mustache +2 -0
  122. data/resources/schema/json_schema/draft-04.json +150 -0
  123. data/resources/schema/swagger/2.0/schema.json +1591 -0
  124. data/src-extend/README +2 -0
  125. data/src-extend/extend/extend_assumptions.mustache +7 -0
  126. data/src-extend/extend/extend_const.mustache +5 -0
  127. data/src-extend/extend/extend_implementation.mustache +9 -0
  128. data/src-extend/extend/extend_invariant.mustache +11 -0
  129. data/src-extend/extend/extend_invariant_cfg.mustache +7 -0
  130. data/src-extend/extend/extend_macros.mustache +19 -0
  131. data/src-extend/extend/extend_operations.mustache +9 -0
  132. data/src-extend/extend/extend_state.mustache +9 -0
  133. data/src-extend/extend_app/assumption +20 -0
  134. data/src-extend/extend_app/correctness +19 -0
  135. data/src-extend/extend_app/correctness.cfg +9 -0
  136. data/src-extend/extend_app/infrastructure +25 -0
  137. data/src-extend/extend_app/interface +11 -0
  138. data/src-extend/extend_app/operator +18 -0
  139. data/src-extend/extend_app/possibility +16 -0
  140. data/src-extend/extend_app/service +33 -0
  141. data/src-extend/extend_app/state +16 -0
  142. data/src-extend/extend_app/transaction +22 -0
  143. data/src/pet/assumption +29 -0
  144. data/src/pet/assumption_address_domains.tla +12 -0
  145. data/src/pet/assumption_domains.tla +16 -0
  146. data/src/pet/assumption_generic.tla +8 -0
  147. data/src/pet/assumption_id_domains.tla +2 -0
  148. data/src/pet/assumption_owner_domains.tla +14 -0
  149. data/src/pet/assumption_pet_domains.tla +16 -0
  150. data/src/pet/assumption_tag_domains.tla +13 -0
  151. data/src/pet/correctness +24 -0
  152. data/src/pet/correctness.cfg +9 -0
  153. data/src/pet/correctness_coherent_owner_address.tla +6 -0
  154. data/src/pet/correctness_pet_name.tla +4 -0
  155. data/src/pet/correctness_ref_tag.tla +13 -0
  156. data/src/pet/correctness_type_invariants.tla +12 -0
  157. data/src/pet/correctness_unique_pet.tla +3 -0
  158. data/src/pet/correctness_unique_tag.tla +3 -0
  159. data/src/pet/docs/Petstore.md +117 -0
  160. data/src/pet/extend/extend_assumptions.mustache +7 -0
  161. data/src/pet/extend/extend_implementation.mustache +9 -0
  162. data/src/pet/extend/extend_invariant.mustache +11 -0
  163. data/src/pet/extend/extend_invariant_cfg.mustache +7 -0
  164. data/src/pet/extend/extend_macros.mustache +19 -0
  165. data/src/pet/extend/extend_operations.mustache +9 -0
  166. data/src/pet/extend/extend_state.mustache +9 -0
  167. data/src/pet/infrastructure +25 -0
  168. data/src/pet/infrastructure_id_get.tla +24 -0
  169. data/src/pet/interface +12 -0
  170. data/src/pet/interface_delete_pet.tla +5 -0
  171. data/src/pet/interface_get_pet.tla +4 -0
  172. data/src/pet/interface_post_pet.tla +5 -0
  173. data/src/pet/interface_post_tag.tla +5 -0
  174. data/src/pet/interface_put_tag.tla +3 -0
  175. data/src/pet/operator +30 -0
  176. data/src/pet/operator_find_tag_by_owner_name.tla +1 -0
  177. data/src/pet/operator_get_pet.tla +4 -0
  178. data/src/pet/operator_get_pet_by_tag.tla +4 -0
  179. data/src/pet/operator_get_tag.tla +10 -0
  180. data/src/pet/operator_new_owner.tla +3 -0
  181. data/src/pet/operator_new_pet.tla +13 -0
  182. data/src/pet/operator_new_tag.tla +3 -0
  183. data/src/pet/operator_next_pet_id.tla +3 -0
  184. data/src/pet/operator_responses.tla +8 -0
  185. data/src/pet/operator_tag_exists.tla +2 -0
  186. data/src/pet/operator_tag_owner_validated.tla +2 -0
  187. data/src/pet/operator_tag_referenced.tla +4 -0
  188. data/src/pet/operator_valid_owner.tla +17 -0
  189. data/src/pet/operator_valid_pet.tla +6 -0
  190. data/src/pet/operator_valid_tag.tla +5 -0
  191. data/src/pet/possibility +18 -0
  192. data/src/pet/possibility_at_least_two_tags.tla +12 -0
  193. data/src/pet/possibility_invalid_tag_address.tla +8 -0
  194. data/src/pet/service +35 -0
  195. data/src/pet/service_pet_delete.tla +11 -0
  196. data/src/pet/service_pet_get.tla +27 -0
  197. data/src/pet/service_pet_post.tla +78 -0
  198. data/src/pet/service_tag_post.tla +53 -0
  199. data/src/pet/service_tag_put.tla +82 -0
  200. data/src/pet/state +16 -0
  201. data/src/pet/state_infra.tla +6 -0
  202. data/src/pet/state_pet.tla +5 -0
  203. data/src/pet/state_tag_id.tla +2 -0
  204. data/src/pet/transaction +23 -0
  205. data/src/pet/transaction_delete_pet.tla +13 -0
  206. data/src/pet/transaction_enter_pet.tla +13 -0
  207. data/src/pet/transaction_enter_tag.tla +56 -0
  208. data/src/pet/transaction_error.tla +23 -0
  209. data/tla-sbuilder.gemspec +43 -0
  210. metadata +353 -0
@@ -0,0 +1,13 @@
1
+ (******************************************************************
2
+
3
+ Operation to delete a pet
4
+
5
+ ******************************************************************)
6
+
7
+ macro delete_pet_trans( pet_input ) {
8
+
9
+ \* remove entry with a maching id
10
+ v_pets := { pet \in v_pets: pet.id # pet_input.id };
11
+
12
+
13
+ }
@@ -0,0 +1,13 @@
1
+ (******************************************************************
2
+ Operation to create a pet
3
+
4
+ ******************************************************************)
5
+
6
+ macro enter_pet( new_pet ) {
7
+
8
+ v_pets := v_pets \union { new_pet };
9
+
10
+ }
11
+
12
+
13
+
@@ -0,0 +1,56 @@
1
+ (*
2
+ * @param new_tag [t_Tag] to enter/update 'new_tag' in state variable 'v_tags'
3
+ *
4
+ * Maintains tag owner address coherence i.e. invariant, which
5
+ * requires that addresses for owners with the same name are equal.
6
+ *
7
+ *)
8
+ macro enter_tag( tagi ) {
9
+
10
+ v_tags :=
11
+
12
+ (*
13
+ TLA+ implementation:
14
+ - remove entries from v_tags
15
+ - replace removed envries with new entries
16
+ *)
17
+
18
+
19
+ ( (
20
+ ( v_tags
21
+
22
+ \ { tag \in v_tags: tag.owner.name = tagi.owner.name /\ tag.tag # tagi.tag }
23
+
24
+ )
25
+
26
+ \union {
27
+ New_Tag( New_Owner( old_tag.owner.name, tagi.owner.address), old_tag.tag ) :
28
+ old_tag \in { tag \in v_tags: tag.owner.name = tagi.owner.name /\ tag.tag # tagi.tag }
29
+ }
30
+
31
+ )
32
+ (* "Remove existing tag" - if it there *)
33
+
34
+ {{#PREFERENCES.error-duplicate-tag}}
35
+
36
+ (* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
37
+ ERRROR
38
+
39
+ When updating tag, we fail to remove exisitng tag from the set
40
+ resulting to duplicate.
41
+ {{/PREFERENCES.error-duplicate-tag}}
42
+
43
+ \ { tag \in v_tags: tag.tag = tagi.tag }
44
+
45
+ {{#PREFERENCES.error-duplicate-tag}}
46
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! *)
47
+ {{/PREFERENCES.error-duplicate-tag}}
48
+
49
+ )
50
+
51
+ (* Add/update new tag *)
52
+ \union { tagi };
53
+
54
+ }
55
+
56
+
@@ -0,0 +1,23 @@
1
+ (******************************************************************
2
+ Application error reported to user.
3
+
4
+ No operation in the model.
5
+ ******************************************************************)
6
+
7
+ macro pet_application_error( msg ) {
8
+ print <<msg>>;
9
+ skip;
10
+ }
11
+
12
+
13
+ (******************************************************************
14
+ An unexpected error has occurred
15
+
16
+ No operation in the model.
17
+
18
+ ******************************************************************)
19
+
20
+ macro pet_system_error( msg ) {
21
+ print <<msg>>;
22
+ skip;
23
+ }
@@ -0,0 +1,43 @@
1
+ # -*- encoding: utf-8; mode: ruby -*-
2
+
3
+ lib = File.expand_path('../lib/', __FILE__)
4
+ $:.unshift lib unless $:.include?(lib)
5
+
6
+
7
+ # http://guides.rubygems.org/make-your-own-gem/
8
+
9
+ Gem::Specification.new do |s|
10
+
11
+ # version = "0.0.1.pre"
12
+ version = File.open( "VERSION", "r" ) { |f| f.read }.strip.gsub( "-SNAPSHOT", ".pre" )
13
+
14
+ s.name = 'tla-sbuilder'
15
+ s.version = version
16
+ s.date = Time.now.strftime( "%Y-%m-%d" ) #'2014-09-10'
17
+ s.summary = "Specification builder for TLA+ language"
18
+ s.description = <<EOF
19
+
20
+ A tool to generate runnable specification models in TLA+ language
21
+ for business IT systems. Specification model can be verified using
22
+ TLA+ Tools, and parts of it can be presented as implementation
23
+ blueprints to developers.
24
+
25
+ EOF
26
+ s.authors = ["jarjuk"]
27
+ s.files = ["README.md", "VERSION", "#{s.name}.gemspec" ] | Dir.glob( "suite*.yaml") | Dir.glob("mustache/**/*") | Dir.glob("src-extend/**/*") | Dir.glob("lib/**/*") | Dir.glob("src/pet/**/*") | Dir.glob("resources/**/*")
28
+ s.require_paths = [ "lib" ]
29
+ s.executables = [ "sbuilder.rb" ]
30
+ s.license = 'MIT'
31
+
32
+ s.required_ruby_version = '~> 2'
33
+
34
+ s.add_runtime_dependency 'mustache', '~>1.0', ">=1.0.2"
35
+ s.add_runtime_dependency 'hashie', '~>3.3', ">=3.3.2"
36
+ s.add_runtime_dependency 'thor', '~>0.19', ">=0.19.1"
37
+ s.add_runtime_dependency 'json-schema', '~>2.5', ">=2.5.2"
38
+ s.add_runtime_dependency 'tla-parser-s', '~>0.1'
39
+
40
+ # # used in pet.sh
41
+ # s.add_runtime_dependency 'bcat'
42
+
43
+ end
metadata ADDED
@@ -0,0 +1,353 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tla-sbuilder
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - jarjuk
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-03-03 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: mustache
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.0.2
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '1.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 1.0.2
33
+ - !ruby/object:Gem::Dependency
34
+ name: hashie
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.3'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 3.3.2
43
+ type: :runtime
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '3.3'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: 3.3.2
53
+ - !ruby/object:Gem::Dependency
54
+ name: thor
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: '0.19'
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 0.19.1
63
+ type: :runtime
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '0.19'
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: 0.19.1
73
+ - !ruby/object:Gem::Dependency
74
+ name: json-schema
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '2.5'
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 2.5.2
83
+ type: :runtime
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.5'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 2.5.2
93
+ - !ruby/object:Gem::Dependency
94
+ name: tla-parser-s
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '0.1'
100
+ type: :runtime
101
+ prerelease: false
102
+ version_requirements: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - "~>"
105
+ - !ruby/object:Gem::Version
106
+ version: '0.1'
107
+ description: |2+
108
+
109
+ A tool to generate runnable specification models in TLA+ language
110
+ for business IT systems. Specification model can be verified using
111
+ TLA+ Tools, and parts of it can be presented as implementation
112
+ blueprints to developers.
113
+
114
+ email:
115
+ executables:
116
+ - sbuilder.rb
117
+ extensions: []
118
+ extra_rdoc_files: []
119
+ files:
120
+ - README.md
121
+ - VERSION
122
+ - bin/sbuilder.rb
123
+ - lib/cli/cli-customer.rb
124
+ - lib/cli/cli-example.rb
125
+ - lib/cli/cli-pet.rb
126
+ - lib/cli/cli-text.rb
127
+ - lib/cli/cli.rb
128
+ - lib/sbuilder.rb
129
+ - lib/sbuilder/constants.rb
130
+ - lib/sbuilder/controller.rb
131
+ - lib/sbuilder/default-sbuilder.yaml
132
+ - lib/sbuilder/domain.rb
133
+ - lib/sbuilder/domain_cardinality.rb
134
+ - lib/sbuilder/domain_value.rb
135
+ - lib/sbuilder/exception.rb
136
+ - lib/sbuilder/extension_loader.rb
137
+ - lib/sbuilder/factory.rb
138
+ - lib/sbuilder/model.rb
139
+ - lib/sbuilder/mustache/template.rb
140
+ - lib/sbuilder/mustache/template_reader.rb
141
+ - lib/sbuilder/mustache/template_reader_context.rb
142
+ - lib/sbuilder/param_set.rb
143
+ - lib/sbuilder/param_set_db.rb
144
+ - lib/sbuilder/param_set_def.rb
145
+ - lib/sbuilder/param_set_if.rb
146
+ - lib/sbuilder/param_set_loader.rb
147
+ - lib/sbuilder/param_set_loader_swagger.rb
148
+ - lib/sbuilder/param_set_step.rb
149
+ - lib/sbuilder/param_sets.rb
150
+ - lib/sbuilder/parameter.rb
151
+ - lib/sbuilder/parameter_container.rb
152
+ - lib/sbuilder/parameter_dom.rb
153
+ - lib/sbuilder/parameter_ref.rb
154
+ - lib/sbuilder/resolver.rb
155
+ - lib/sbuilder/resolver_loader.rb
156
+ - lib/sbuilder/resolver_loader_yaml.rb
157
+ - lib/sbuilder/resolver_rule.rb
158
+ - lib/sbuilder/resolver_rule_match.rb
159
+ - lib/sbuilder/resolver_rule_ref.rb
160
+ - lib/utils/hash_inject.rb
161
+ - lib/utils/logger.rb
162
+ - lib/utils/netio.rb
163
+ - lib/utils/string_inject.rb
164
+ - lib/utils/version.rb
165
+ - mustache/cfg/const_def.mustache
166
+ - mustache/cfg/const_run.mustache
167
+ - mustache/cfg/invariant-infrastructure-service.mustache
168
+ - mustache/cfg/macro_run.mustache
169
+ - mustache/cfg/module_footer.mustache
170
+ - mustache/cfg/module_header.mustache
171
+ - mustache/data-model-dump.mustache
172
+ - mustache/data-model-footer.mustache
173
+ - mustache/data-model-header.mustache
174
+ - mustache/definition_types.mustache
175
+ - mustache/domains.mustache
176
+ - mustache/domains_assign.mustache
177
+ - mustache/domains_run.mustache
178
+ - mustache/extend/extend_assumptions.mustache
179
+ - mustache/extend/extend_const.mustache
180
+ - mustache/extend/extend_implementation.mustache
181
+ - mustache/extend/extend_invariant.mustache
182
+ - mustache/extend/extend_invariant_cfg.mustache
183
+ - mustache/extend/extend_macros.mustache
184
+ - mustache/extend/extend_operations.mustache
185
+ - mustache/extend/extend_state.mustache
186
+ - mustache/infrastructure-service-init.mustache
187
+ - mustache/infrastructure-service-variables.mustache
188
+ - mustache/interface_processes.mustache
189
+ - mustache/interface_stubs_dummy.mustache
190
+ - mustache/interface_types.mustache
191
+ - mustache/markdown-header.mustache
192
+ - mustache/markdown-toc.mustache
193
+ - mustache/name_definition_type.mustache
194
+ - mustache/name_domain.mustache
195
+ - mustache/name_domain_value.mustache
196
+ - mustache/name_domain_value_prefix.mustache
197
+ - mustache/name_interface_response_type.mustache
198
+ - mustache/name_interface_type.mustache
199
+ - mustache/name_parameter_definition.mustache
200
+ - mustache/name_parameter_type.mustache
201
+ - mustache/name_process.mustache
202
+ - mustache/name_type_invariant.mustache
203
+ - mustache/name_variable.mustache
204
+ - mustache/operator-infrastructure-service.mustache
205
+ - mustache/possibility/module_extends.mustache
206
+ - mustache/possibility/module_footer.mustache
207
+ - mustache/possibility/module_header.mustache
208
+ - mustache/possibility/possibility_definition.mustache
209
+ - mustache/possibility/possibility_directive.mustache
210
+ - mustache/possibility/possility_setup.mustache
211
+ - mustache/setup/module_footer.mustache
212
+ - mustache/setup/module_header.mustache
213
+ - mustache/setup/operator_run.mustache
214
+ - mustache/setup/operator_tick.mustache
215
+ - mustache/setup/steps_run.mustache
216
+ - mustache/setup/steps_run_bind_rule.mustache
217
+ - mustache/setup/steps_run_bind_set.mustache
218
+ - mustache/setup/steps_run_parameterBind.mustache
219
+ - mustache/setup/steps_run_parameterExact.mustache
220
+ - mustache/state_type_invariant-infrastructure-service.mustache
221
+ - mustache/state_type_invariant.mustache
222
+ - mustache/state_type_invariant_cfg.mustache
223
+ - mustache/state_variables.mustache
224
+ - mustache/tla/const_def.mustache
225
+ - mustache/tla/const_run.mustache
226
+ - mustache/tla/macro-infrastructure-service.mustache
227
+ - mustache/tla/macro_run.mustache
228
+ - mustache/tla/module_footer.mustache
229
+ - mustache/tla/module_header.mustache
230
+ - mustache/tla/operator_run.mustache
231
+ - mustache/tla/operators-infrastructure-service.mustache
232
+ - mustache/tla/plc_define_footer.mustache
233
+ - mustache/tla/plc_define_header.mustache
234
+ - mustache/tla/plc_define_run.mustache
235
+ - mustache/tla/plc_footer.mustache
236
+ - mustache/tla/plc_header.mustache
237
+ - mustache/tla/plc_run_state.mustache
238
+ - mustache/tla/plc_tail.mustache
239
+ - mustache/tla/plc_translation.mustache
240
+ - resources/schema/json_schema/draft-04.json
241
+ - resources/schema/swagger/2.0/schema.json
242
+ - src-extend/README
243
+ - src-extend/extend/extend_assumptions.mustache
244
+ - src-extend/extend/extend_const.mustache
245
+ - src-extend/extend/extend_implementation.mustache
246
+ - src-extend/extend/extend_invariant.mustache
247
+ - src-extend/extend/extend_invariant_cfg.mustache
248
+ - src-extend/extend/extend_macros.mustache
249
+ - src-extend/extend/extend_operations.mustache
250
+ - src-extend/extend/extend_state.mustache
251
+ - src-extend/extend_app/assumption
252
+ - src-extend/extend_app/correctness
253
+ - src-extend/extend_app/correctness.cfg
254
+ - src-extend/extend_app/infrastructure
255
+ - src-extend/extend_app/interface
256
+ - src-extend/extend_app/operator
257
+ - src-extend/extend_app/possibility
258
+ - src-extend/extend_app/service
259
+ - src-extend/extend_app/state
260
+ - src-extend/extend_app/transaction
261
+ - src/pet/assumption
262
+ - src/pet/assumption_address_domains.tla
263
+ - src/pet/assumption_domains.tla
264
+ - src/pet/assumption_generic.tla
265
+ - src/pet/assumption_id_domains.tla
266
+ - src/pet/assumption_owner_domains.tla
267
+ - src/pet/assumption_pet_domains.tla
268
+ - src/pet/assumption_tag_domains.tla
269
+ - src/pet/correctness
270
+ - src/pet/correctness.cfg
271
+ - src/pet/correctness_coherent_owner_address.tla
272
+ - src/pet/correctness_pet_name.tla
273
+ - src/pet/correctness_ref_tag.tla
274
+ - src/pet/correctness_type_invariants.tla
275
+ - src/pet/correctness_unique_pet.tla
276
+ - src/pet/correctness_unique_tag.tla
277
+ - src/pet/docs/Petstore.md
278
+ - src/pet/extend/extend_assumptions.mustache
279
+ - src/pet/extend/extend_implementation.mustache
280
+ - src/pet/extend/extend_invariant.mustache
281
+ - src/pet/extend/extend_invariant_cfg.mustache
282
+ - src/pet/extend/extend_macros.mustache
283
+ - src/pet/extend/extend_operations.mustache
284
+ - src/pet/extend/extend_state.mustache
285
+ - src/pet/infrastructure
286
+ - src/pet/infrastructure_id_get.tla
287
+ - src/pet/interface
288
+ - src/pet/interface_delete_pet.tla
289
+ - src/pet/interface_get_pet.tla
290
+ - src/pet/interface_post_pet.tla
291
+ - src/pet/interface_post_tag.tla
292
+ - src/pet/interface_put_tag.tla
293
+ - src/pet/operator
294
+ - src/pet/operator_find_tag_by_owner_name.tla
295
+ - src/pet/operator_get_pet.tla
296
+ - src/pet/operator_get_pet_by_tag.tla
297
+ - src/pet/operator_get_tag.tla
298
+ - src/pet/operator_new_owner.tla
299
+ - src/pet/operator_new_pet.tla
300
+ - src/pet/operator_new_tag.tla
301
+ - src/pet/operator_next_pet_id.tla
302
+ - src/pet/operator_responses.tla
303
+ - src/pet/operator_tag_exists.tla
304
+ - src/pet/operator_tag_owner_validated.tla
305
+ - src/pet/operator_tag_referenced.tla
306
+ - src/pet/operator_valid_owner.tla
307
+ - src/pet/operator_valid_pet.tla
308
+ - src/pet/operator_valid_tag.tla
309
+ - src/pet/possibility
310
+ - src/pet/possibility_at_least_two_tags.tla
311
+ - src/pet/possibility_invalid_tag_address.tla
312
+ - src/pet/service
313
+ - src/pet/service_pet_delete.tla
314
+ - src/pet/service_pet_get.tla
315
+ - src/pet/service_pet_post.tla
316
+ - src/pet/service_tag_post.tla
317
+ - src/pet/service_tag_put.tla
318
+ - src/pet/state
319
+ - src/pet/state_infra.tla
320
+ - src/pet/state_pet.tla
321
+ - src/pet/state_tag_id.tla
322
+ - src/pet/transaction
323
+ - src/pet/transaction_delete_pet.tla
324
+ - src/pet/transaction_enter_pet.tla
325
+ - src/pet/transaction_enter_tag.tla
326
+ - src/pet/transaction_error.tla
327
+ - tla-sbuilder.gemspec
328
+ homepage:
329
+ licenses:
330
+ - MIT
331
+ metadata: {}
332
+ post_install_message:
333
+ rdoc_options: []
334
+ require_paths:
335
+ - lib
336
+ required_ruby_version: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - "~>"
339
+ - !ruby/object:Gem::Version
340
+ version: '2'
341
+ required_rubygems_version: !ruby/object:Gem::Requirement
342
+ requirements:
343
+ - - ">="
344
+ - !ruby/object:Gem::Version
345
+ version: '0'
346
+ requirements: []
347
+ rubyforge_project:
348
+ rubygems_version: 2.2.2
349
+ signing_key:
350
+ specification_version: 4
351
+ summary: Specification builder for TLA+ language
352
+ test_files: []
353
+ has_rdoc: