xamplr-gen 1.9.0

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 (50) hide show
  1. data/.document +5 -0
  2. data/.gitignore +22 -0
  3. data/COPYING +619 -0
  4. data/LICENSE +4 -0
  5. data/Makefile +11 -0
  6. data/README.md +33 -0
  7. data/Rakefile +66 -0
  8. data/VERSION +1 -0
  9. data/bin/xampl-gen +17 -0
  10. data/features/step_definitions/xamplr-gen_steps.rb +0 -0
  11. data/features/support/env.rb +6 -0
  12. data/features/xamplr-gen.feature +9 -0
  13. data/lib/xamplr-gen.rb +13 -0
  14. data/lib/xamplr-gen/.cvsignore +1 -0
  15. data/lib/xamplr-gen/graphml-out.rb +449 -0
  16. data/lib/xamplr-gen/my.gen.elements.xml +461 -0
  17. data/lib/xamplr-gen/simpleTemplate/danger.rx +4 -0
  18. data/lib/xamplr-gen/simpleTemplate/obsolete/input-c.r4 +35 -0
  19. data/lib/xamplr-gen/simpleTemplate/obsolete/play.r6.txt +12 -0
  20. data/lib/xamplr-gen/simpleTemplate/obsolete/play_more.r6.txt +20 -0
  21. data/lib/xamplr-gen/simpleTemplate/obsolete/test001.r5 +8 -0
  22. data/lib/xamplr-gen/simpleTemplate/obsolete/test002.r5 +13 -0
  23. data/lib/xamplr-gen/simpleTemplate/obsolete/test003.r5 +37 -0
  24. data/lib/xamplr-gen/simpleTemplate/old/r6.000.rb +122 -0
  25. data/lib/xamplr-gen/simpleTemplate/old/r6.001.rb +145 -0
  26. data/lib/xamplr-gen/simpleTemplate/play.r6 +12 -0
  27. data/lib/xamplr-gen/simpleTemplate/play_more.r6 +20 -0
  28. data/lib/xamplr-gen/simpleTemplate/play_noblanks.r6 +21 -0
  29. data/lib/xamplr-gen/simpleTemplate/playq.r6 +16 -0
  30. data/lib/xamplr-gen/simpleTemplate/r6.rb +87 -0
  31. data/lib/xamplr-gen/simpleTemplate/simple-template.rb +75 -0
  32. data/lib/xamplr-gen/templates/.cvsignore +3 -0
  33. data/lib/xamplr-gen/templates/child.template +47 -0
  34. data/lib/xamplr-gen/templates/child_indexed.template +89 -0
  35. data/lib/xamplr-gen/templates/child_modules.template +5 -0
  36. data/lib/xamplr-gen/templates/element_classes.template +11 -0
  37. data/lib/xamplr-gen/templates/element_data.template +283 -0
  38. data/lib/xamplr-gen/templates/element_empty.template +277 -0
  39. data/lib/xamplr-gen/templates/element_mixed.template +278 -0
  40. data/lib/xamplr-gen/templates/element_simple.template +277 -0
  41. data/lib/xamplr-gen/templates/package.template +38 -0
  42. data/lib/xamplr-gen/xampl-cl-gen.rb +89 -0
  43. data/lib/xamplr-gen/xampl-generator.rb +561 -0
  44. data/lib/xamplr-gen/xampl-hand-generated.rb +1534 -0
  45. data/lib/xamplr-gen/yuml-out.rb +127 -0
  46. data/licence.rb +17 -0
  47. data/test/helper.rb +10 -0
  48. data/test/test_xamplr-gen.rb +7 -0
  49. data/xamplr-gen.gemspec +98 -0
  50. metadata +124 -0
@@ -0,0 +1,1534 @@
1
+
2
+ module XamplGenerator
3
+
4
+ include Xampl
5
+
6
+ XamplObject.ns_preferred_prefix("http://xampl.com/generator", "gen")
7
+
8
+ module ElementsAsChild
9
+
10
+ def elements_child
11
+ accessed
12
+ @elements_child
13
+ end
14
+
15
+ def elements_child=(v)
16
+ accessed
17
+ @elements_child = v
18
+ end
19
+
20
+ alias elements elements_child
21
+ alias elements= elements_child=
22
+
23
+ def init_elements_as_child
24
+ @elements_child = IndexedArray.new
25
+ end
26
+
27
+ def add_elements(elements)
28
+ accessed
29
+ index = elements.get_the_index
30
+ if (nil == index) then
31
+ throw "no value for the index 'pid' of elements defined in : " << elements.pp_xml
32
+ end
33
+
34
+ existing = @elements_child[index]
35
+
36
+ self.remove_elements(index) if existing and (existing != elements)
37
+
38
+ @children << elements
39
+ @elements_child[index] = elements
40
+
41
+ elements.add_parent(self)
42
+
43
+ changed
44
+ return elements
45
+ end
46
+
47
+ def new_elements(index)
48
+ accessed
49
+
50
+ elements = nil
51
+ elements = Elements.lookup(index) if Xampl.persister and Xampl.persister.automatic
52
+ elements = Elements.new(index) unless elements
53
+
54
+ yield(elements) if block_given?
55
+ return add_elements(elements)
56
+ end
57
+
58
+ def ensure_elements(index)
59
+ accessed
60
+
61
+ elements = @elements_child[index]
62
+ return elements if elements
63
+
64
+ elements = Elements.lookup(index) if Xampl.persister and Xampl.persister.automatic
65
+ elements = Elements.new(index) unless elements
66
+
67
+ yield(elements) if block_given?
68
+ return add_elements(elements)
69
+ end
70
+
71
+ def remove_elements(index)
72
+ accessed
73
+ changed
74
+ unless String === index or Symbol === index then
75
+ index = index.get_the_index
76
+ end
77
+ elements = @elements_child.delete(index) if index
78
+ @children.delete(elements)
79
+ end
80
+ end
81
+
82
+ module ElementAsChild
83
+ require "xamplr/indexed-array"
84
+
85
+ def element_child
86
+ accessed
87
+ @element_child
88
+ end
89
+
90
+ def element_child=(v)
91
+ accessed
92
+ @element_child = v
93
+ end
94
+
95
+ alias element element_child
96
+ alias element= element_child=
97
+
98
+ def init_element_as_child
99
+ @element_child = IndexedArray.new
100
+ end
101
+
102
+ def add_element(element)
103
+ accessed
104
+ index = element.get_the_index
105
+ if (nil == index) then
106
+ throw "no value for the index 'name' of element defined in : " << element.pp_xml
107
+ end
108
+
109
+ existing = @element_child[index]
110
+
111
+ self.remove_element(index) if existing and (existing != element)
112
+
113
+ @children << element
114
+ @element_child[index] = element
115
+
116
+ element.add_parent(self)
117
+
118
+ changed
119
+ return element
120
+ end
121
+
122
+ def new_element(index)
123
+ accessed
124
+
125
+ element = nil
126
+ element = Element.new(index) unless element
127
+
128
+ yield(element) if block_given?
129
+ return add_element(element)
130
+ end
131
+
132
+ def ensure_element(index)
133
+ accessed
134
+
135
+ element = @element_child[index]
136
+ return element if element
137
+
138
+ element = Element.new(index) unless element
139
+
140
+ yield(element) if block_given?
141
+ return add_element(element)
142
+ end
143
+
144
+ def remove_element(index)
145
+ accessed
146
+ changed
147
+ unless String === index or Symbol === index then
148
+ index = index.get_the_index
149
+ end
150
+ element = @element_child.delete(index) if index
151
+ @children.delete(element)
152
+ end
153
+ end
154
+
155
+ module ChildElementAsChild
156
+ require "xamplr/indexed-array"
157
+
158
+ def child_element_child
159
+ accessed
160
+ @child_element_child
161
+ end
162
+
163
+ def child_element_child=(v)
164
+ accessed
165
+ @child_element_child = v
166
+ end
167
+
168
+ alias child_element child_element_child
169
+ alias child_element= child_element_child=
170
+
171
+ def init_child_element_as_child
172
+ @child_element_child = IndexedArray.new
173
+ end
174
+
175
+ def add_child_element(child_element)
176
+ accessed
177
+ index = child_element.get_the_index
178
+ if (nil == index) then
179
+ throw "no value for the index 'name' of child_element defined in : " << child_element.pp_xml
180
+ end
181
+
182
+ existing = @child_element_child[index]
183
+
184
+ self.remove_child_element(index) if existing and (existing != child_element)
185
+
186
+ @children << child_element
187
+ @child_element_child[index] = child_element
188
+
189
+ child_element.add_parent(self)
190
+
191
+ changed
192
+ return child_element
193
+ end
194
+
195
+ def new_child_element(index)
196
+ accessed
197
+
198
+ child_element = nil
199
+ child_element = ChildElement.new(index) unless child_element
200
+
201
+ yield(child_element) if block_given?
202
+ return add_child_element(child_element)
203
+ end
204
+
205
+ def ensure_child_element(index)
206
+ accessed
207
+
208
+ child_element = @child_element_child[index]
209
+ return child_element if child_element
210
+
211
+ child_element = ChildElement.new(index) unless child_element
212
+
213
+ yield(child_element) if block_given?
214
+ return add_child_element(child_element)
215
+ end
216
+
217
+ def remove_child_element(index)
218
+ accessed
219
+ changed
220
+ unless String === index or Symbol === index then
221
+ index = index.get_the_index
222
+ end
223
+ child_element = @child_element_child.delete(index) if index
224
+ @children.delete(child_element)
225
+ end
226
+ end
227
+
228
+ module AttributeAsChild
229
+ require "xamplr/indexed-array"
230
+
231
+ def attribute_child
232
+ accessed
233
+ @attribute_child
234
+ end
235
+
236
+ def attribute_child=(v)
237
+ accessed
238
+ @attribute_child = v
239
+ end
240
+
241
+ alias attribute attribute_child
242
+ alias attribute= attribute_child=
243
+
244
+ def init_attribute_as_child
245
+ @attribute_child = IndexedArray.new
246
+ end
247
+
248
+ def add_attribute(attribute)
249
+ accessed
250
+ index = attribute.get_the_index
251
+ if (nil == index) then
252
+ throw "no value for the index 'name' of attribute defined in : " << attribute.pp_xml
253
+ end
254
+
255
+ existing = @attribute_child[index]
256
+
257
+ self.remove_attribute(index) if existing and (existing != attribute)
258
+
259
+ @children << attribute
260
+ @attribute_child[index] = attribute
261
+
262
+ attribute.add_parent(self)
263
+
264
+ changed
265
+ return attribute
266
+ end
267
+
268
+ def new_attribute(index)
269
+ accessed
270
+
271
+ attribute = nil
272
+ attribute = Attribute.new(index) unless attribute
273
+
274
+ yield(attribute) if block_given?
275
+ return add_attribute(attribute)
276
+ end
277
+
278
+ def ensure_attribute(index)
279
+ accessed
280
+
281
+ attribute = @attribute_child[index]
282
+ return attribute if attribute
283
+
284
+ attribute = Attribute.new(index) unless attribute
285
+
286
+ yield(attribute) if block_given?
287
+ return add_attribute(attribute)
288
+ end
289
+
290
+ def remove_attribute(index)
291
+ accessed
292
+ changed
293
+ unless String === index or Symbol === index then
294
+ index = index.get_the_index
295
+ end
296
+ attribute = @attribute_child.delete(index) if index
297
+ @children.delete(attribute)
298
+ end
299
+ end
300
+
301
+ module OptionsAsChild
302
+ def options_child
303
+ accessed
304
+ @options_child
305
+ end
306
+
307
+ def options_child=(v)
308
+ accessed
309
+ @options_child = v
310
+ end
311
+
312
+ alias options options_child
313
+ alias options= options_child=
314
+
315
+ def init_options_as_child
316
+ @options_child = []
317
+ end
318
+
319
+ def add_options(options)
320
+ accessed
321
+ @children << options
322
+ @options_child << options
323
+ options.add_parent(self)
324
+ changed
325
+ return options
326
+ end
327
+
328
+ def new_options
329
+ accessed
330
+ options = Options.new
331
+ yield(options) if block_given?
332
+ return add_options(options)
333
+ end
334
+
335
+ alias ensure_options new_options
336
+
337
+ def remove_options(options)
338
+ accessed
339
+ @options_child.delete(options)
340
+ @children.delete(options)
341
+ end
342
+ end
343
+
344
+ module IndexAttributeAsChild
345
+ require "xamplr/indexed-array"
346
+
347
+ def index_attribute_child
348
+ accessed
349
+ @index_attribute_child
350
+ end
351
+
352
+ def index_attribute_child=(v)
353
+ accessed
354
+ @index_attribute_child = v
355
+ end
356
+
357
+ alias index_attribute index_attribute_child
358
+ alias index_attribute= index_attribute_child=
359
+
360
+ def init_index_attribute_as_child
361
+ @index_attribute_child = IndexedArray.new
362
+ end
363
+
364
+ def add_index_attribute(index_attribute)
365
+ accessed
366
+ index = index_attribute.get_the_index
367
+ if (nil == index) then
368
+ throw "no value for the index 'name' of index_attribute defined in : " << index_attribute.pp_xml
369
+ end
370
+
371
+ existing = @index_attribute_child[index]
372
+
373
+ self.remove_index_attribute(index) if existing and (existing != index_attribute)
374
+
375
+ @children << index_attribute
376
+ @index_attribute_child[index] = index_attribute
377
+
378
+ index_attribute.add_parent(self)
379
+
380
+ changed
381
+ return index_attribute
382
+ end
383
+
384
+ def new_index_attribute(index)
385
+ accessed
386
+
387
+ index_attribute = nil
388
+ index_attribute = IndexAttribute.new(index) unless index_attribute
389
+
390
+ yield(index_attribute) if block_given?
391
+ return add_index_attribute(index_attribute)
392
+ end
393
+
394
+ def ensure_index_attribute(index)
395
+ accessed
396
+
397
+ index_attribute = @index_attribute_child[index]
398
+ return index_attribute if index_attribute
399
+
400
+ index_attribute = IndexAttribute.new(index) unless index_attribute
401
+
402
+ yield(index_attribute) if block_given?
403
+ return add_index_attribute(index_attribute)
404
+ end
405
+
406
+ def remove_index_attribute(index)
407
+ accessed
408
+ changed
409
+ unless String === index or Symbol === index then
410
+ index = index.get_the_index
411
+ end
412
+ index_attribute = @index_attribute_child.delete(index) if index
413
+ @children.delete(index_attribute)
414
+ end
415
+ end
416
+
417
+ module ResolveAsChild
418
+ def resolve_child
419
+ accessed
420
+ @resolve_child
421
+ end
422
+
423
+ def resolve_child=(v)
424
+ accessed
425
+ @resolve_child = v
426
+ end
427
+
428
+ alias resolve resolve_child
429
+ alias resolve= resolve_child=
430
+
431
+ def init_resolve_as_child
432
+ @resolve_child = []
433
+ end
434
+
435
+ def add_resolve(resolve)
436
+ accessed
437
+ @children << resolve
438
+ @resolve_child << resolve
439
+ resolve.add_parent(self)
440
+ changed
441
+ return resolve
442
+ end
443
+
444
+ def new_resolve
445
+ accessed
446
+ resolve = Resolve.new
447
+ yield(resolve) if block_given?
448
+ return add_resolve(resolve)
449
+ end
450
+
451
+ alias ensure_resolve new_resolve
452
+
453
+ def remove_resolve(resolve)
454
+ accessed
455
+ @resolve_child.delete(resolve)
456
+ @children.delete(resolve)
457
+ end
458
+ end
459
+
460
+ class Elements
461
+ include Xampl::XamplPersistedObject
462
+ include Xampl::XamplWithDataContent
463
+
464
+ def Elements.persisted?
465
+ false
466
+ end
467
+
468
+ def persisted?
469
+ false
470
+ end
471
+
472
+ @@tag = "elements"
473
+ @@ns = "http://xampl.com/generator"
474
+ @@ns_tag = "{http://xampl.com/generator}elements"
475
+ @@module_name = "XamplGenerator"
476
+ @@attributes = [
477
+ [ :@pid, "pid" ],
478
+ ]
479
+ include ElementAsChild
480
+
481
+ def Elements.lookup(pid)
482
+ Xampl.lookup(Elements, pid)
483
+ end
484
+
485
+ def Elements.[](pid)
486
+ Xampl.lookup(Elements, pid)
487
+ end
488
+
489
+ def pid
490
+ @pid
491
+ end
492
+
493
+ def pid=(v)
494
+ accessed
495
+ # This is kind of optimistic, I think you are in trouble if you do this
496
+ Xampl.auto_uncache(self) if @pid
497
+ @pid = v
498
+ changed
499
+ Xampl.auto_cache(self) if v
500
+ end
501
+
502
+ def initialize(index=nil)
503
+ @pid = index if index
504
+ super()
505
+
506
+ @pid = nil if not defined? @pid
507
+
508
+ init_xampl_object
509
+ init_data_content
510
+ init_element_as_child
511
+
512
+ yield(self) if block_given?
513
+ changed
514
+ end
515
+
516
+ def clear_non_persistent_index_attributes
517
+ end
518
+
519
+ def append_to(other)
520
+ other.add_elements(self)
521
+ end
522
+
523
+ def Elements.tag
524
+ @@tag
525
+ end
526
+
527
+ def Elements.ns
528
+ @@ns
529
+ end
530
+
531
+ def Elements.ns_tag
532
+ @@ns_tag
533
+ end
534
+
535
+ def Elements.module_name
536
+ @@module_name
537
+ end
538
+
539
+ def tag
540
+ @@tag
541
+ end
542
+
543
+ def ns
544
+ @@ns
545
+ end
546
+
547
+ def ns_tag
548
+ @@ns_tag
549
+ end
550
+
551
+ def module_name
552
+ @@module_name
553
+ end
554
+
555
+ def attributes
556
+ @@attributes
557
+ end
558
+
559
+ def indexed_by
560
+ :pid
561
+ end
562
+
563
+ def get_the_index
564
+ @pid
565
+ end
566
+
567
+ def set_the_index(index)
568
+ @pid = index
569
+ end
570
+
571
+ def substitute_in_visit(visitor)
572
+ return visitor.substitute_in_visit_elements(self) || self
573
+ end
574
+
575
+ def before_visit(visitor)
576
+ visitor.before_visit_elements(self)
577
+ end
578
+
579
+ def visit(visitor)
580
+ visitor.visit_elements(self)
581
+ end
582
+
583
+ def after_visit(visitor)
584
+ visitor.after_visit_elements(self)
585
+ end
586
+
587
+ Xampl::FromXML::register(Elements::tag, Elements::ns_tag, Elements)
588
+ end
589
+
590
+ class Element
591
+ include Xampl::XamplObject
592
+ include Xampl::XamplWithDataContent
593
+
594
+ def Element.persisted?
595
+ false
596
+ end
597
+
598
+ def persisted?
599
+ false
600
+ end
601
+
602
+ @@tag = "element"
603
+ @@ns = "http://xampl.com/generator"
604
+ @@ns_tag = "{http://xampl.com/generator}element"
605
+ @@module_name = "XamplGenerator"
606
+ @@attributes = [
607
+ [ :@has_content, "hasContent" ],
608
+ [ :@class_name, "className" ],
609
+ [ :@attribute_name, "attributeName" ],
610
+ [ :@nstag, "nstag" ],
611
+ [ :@empty, "empty" ],
612
+ [ :@indexed_by_attr, "indexedByAttr" ],
613
+ [ :@persisted, "persisted" ],
614
+ [ :@name, "name" ],
615
+ [ :@kind, "kind" ],
616
+ [ :@namespace, "namespace" ],
617
+ [ :@package, "package" ],
618
+ ]
619
+ include ChildElementAsChild
620
+ include AttributeAsChild
621
+
622
+ def has_content
623
+ accessed
624
+ @has_content
625
+ end
626
+
627
+ def has_content=(v)
628
+ accessed
629
+ changed
630
+ @has_content = v
631
+ end
632
+
633
+ def class_name
634
+ accessed
635
+ @class_name
636
+ end
637
+
638
+ def class_name=(v)
639
+ accessed
640
+ changed
641
+ @class_name = v
642
+ end
643
+
644
+ def attribute_name
645
+ accessed
646
+ @attribute_name
647
+ end
648
+
649
+ def attribute_name=(v)
650
+ accessed
651
+ changed
652
+ @attribute_name = v
653
+ end
654
+
655
+ def nstag
656
+ accessed
657
+ @nstag
658
+ end
659
+
660
+ def nstag=(v)
661
+ accessed
662
+ changed
663
+ @nstag = v
664
+ end
665
+
666
+ def empty
667
+ accessed
668
+ @empty
669
+ end
670
+
671
+ def empty=(v)
672
+ accessed
673
+ changed
674
+ @empty = v
675
+ end
676
+
677
+ def indexed_by_attr
678
+ accessed
679
+ @indexed_by_attr
680
+ end
681
+
682
+ def indexed_by_attr=(v)
683
+ accessed
684
+ changed
685
+ @indexed_by_attr = v
686
+ end
687
+
688
+ def persisted
689
+ accessed
690
+ @persisted
691
+ end
692
+
693
+ def persisted=(v)
694
+ accessed
695
+ changed
696
+ @persisted = v
697
+ end
698
+
699
+ def name
700
+ accessed
701
+ @name
702
+ end
703
+
704
+ def name=(v)
705
+ accessed
706
+ changed
707
+ @name = v
708
+ end
709
+
710
+ def kind
711
+ accessed
712
+ @kind
713
+ end
714
+
715
+ def kind=(v)
716
+ accessed
717
+ changed
718
+ @kind = v
719
+ end
720
+
721
+ def namespace
722
+ accessed
723
+ @namespace
724
+ end
725
+
726
+ def namespace=(v)
727
+ accessed
728
+ changed
729
+ @namespace = v
730
+ end
731
+
732
+ def package
733
+ accessed
734
+ @package
735
+ end
736
+
737
+ def package=(v)
738
+ accessed
739
+ changed
740
+ @package = v
741
+ end
742
+
743
+ def initialize(index=nil)
744
+ @name = index if index
745
+ super()
746
+
747
+ @has_content = nil if not defined? @has_content
748
+ @class_name = nil if not defined? @class_name
749
+ @attribute_name = nil if not defined? @attribute_name
750
+ @nstag = nil if not defined? @nstag
751
+ @empty = nil if not defined? @empty
752
+ @indexed_by_attr = nil if not defined? @indexed_by_attr
753
+ @persisted = nil if not defined? @persisted
754
+ @name = nil if not defined? @name
755
+ @kind = nil if not defined? @kind
756
+ @namespace = nil if not defined? @namespace
757
+ @package = nil if not defined? @package
758
+
759
+ init_xampl_object
760
+ init_data_content
761
+ init_child_element_as_child
762
+ init_attribute_as_child
763
+
764
+ yield(self) if block_given?
765
+ changed
766
+ end
767
+
768
+ def clear_non_persistent_index_attributes
769
+ @has_content = nil
770
+ @class_name = nil
771
+ @attribute_name = nil
772
+ @nstag = nil
773
+ @empty = nil
774
+ @indexed_by_attr = nil
775
+ @persisted = nil
776
+ @name = nil
777
+ @kind = nil
778
+ @namespace = nil
779
+ @package = nil
780
+ end
781
+
782
+ def append_to(other)
783
+ other.add_element(self)
784
+ end
785
+
786
+ def Element.tag
787
+ @@tag
788
+ end
789
+
790
+ def Element.ns
791
+ @@ns
792
+ end
793
+
794
+ def Element.ns_tag
795
+ @@ns_tag
796
+ end
797
+
798
+ def Element.module_name
799
+ @@module_name
800
+ end
801
+
802
+ def tag
803
+ @@tag
804
+ end
805
+
806
+ def ns
807
+ @@ns
808
+ end
809
+
810
+ def ns_tag
811
+ @@ns_tag
812
+ end
813
+
814
+ def module_name
815
+ @@module_name
816
+ end
817
+
818
+ def attributes
819
+ @@attributes
820
+ end
821
+
822
+ def indexed_by
823
+ :name
824
+ end
825
+
826
+ def get_the_index
827
+ @name
828
+ end
829
+
830
+ def set_the_index(index)
831
+ @name = index
832
+ end
833
+
834
+ def substitute_in_visit(visitor)
835
+ return visitor.substitute_in_visit_element(self) || self
836
+ end
837
+
838
+ def before_visit(visitor)
839
+ visitor.before_visit_element(self)
840
+ end
841
+
842
+ def visit(visitor)
843
+ visitor.visit_element(self)
844
+ end
845
+
846
+ def after_visit(visitor)
847
+ visitor.after_visit_element(self)
848
+ end
849
+
850
+ Xampl::FromXML::register(Element::tag, Element::ns_tag, Element)
851
+ end
852
+
853
+ class ChildElement
854
+ include Xampl::XamplObject
855
+ include Xampl::XamplWithoutContent
856
+
857
+ def ChildElement.persisted?
858
+ false
859
+ end
860
+
861
+ def persisted?
862
+ false
863
+ end
864
+
865
+ @@tag = "childElement"
866
+ @@ns = "http://xampl.com/generator"
867
+ @@ns_tag = "{http://xampl.com/generator}childElement"
868
+ @@module_name = "XamplGenerator"
869
+ @@attributes = [
870
+ [ :@element_name, "element_name" ],
871
+ [ :@name, "name" ],
872
+ [ :@namespace, "namespace" ],
873
+ [ :@index_class, "index_class" ],
874
+ [ :@index, "index" ],
875
+ [ :@package, "package" ],
876
+ ]
877
+
878
+ def element_name
879
+ accessed
880
+ @element_name
881
+ end
882
+
883
+ def element_name=(v)
884
+ accessed
885
+ changed
886
+ @element_name = v
887
+ end
888
+
889
+ def name
890
+ accessed
891
+ @name
892
+ end
893
+
894
+ def name=(v)
895
+ accessed
896
+ changed
897
+ @name = v
898
+ end
899
+
900
+ def namespace
901
+ accessed
902
+ @namespace
903
+ end
904
+
905
+ def namespace=(v)
906
+ accessed
907
+ changed
908
+ @namespace = v
909
+ end
910
+
911
+ def index_class
912
+ accessed
913
+ @index_class
914
+ end
915
+
916
+ def index_class=(v)
917
+ accessed
918
+ changed
919
+ @index_class = v
920
+ end
921
+
922
+ def index
923
+ accessed
924
+ @index
925
+ end
926
+
927
+ def index=(v)
928
+ accessed
929
+ changed
930
+ @index = v
931
+ end
932
+
933
+ def package
934
+ accessed
935
+ @package
936
+ end
937
+
938
+ def package=(v)
939
+ accessed
940
+ changed
941
+ @package = v
942
+ end
943
+
944
+ def initialize(index=nil)
945
+ @name = index if index
946
+ super()
947
+
948
+ @element_name = nil if not defined? @element_name
949
+ @name = nil if not defined? @name
950
+ @namespace = nil if not defined? @namespace
951
+ @index_class = nil if not defined? @index_class
952
+ @index = nil if not defined? @index
953
+ @package = nil if not defined? @package
954
+
955
+ init_xampl_object
956
+
957
+ yield(self) if block_given?
958
+ changed
959
+ end
960
+
961
+ def clear_non_persistent_index_attributes
962
+ @element_name = nil
963
+ @name = nil
964
+ @namespace = nil
965
+ @index_class = nil
966
+ @index = nil
967
+ @package = nil
968
+ end
969
+
970
+ def append_to(other)
971
+ other.add_child_element(self)
972
+ end
973
+
974
+ def ChildElement.tag
975
+ @@tag
976
+ end
977
+
978
+ def ChildElement.ns
979
+ @@ns
980
+ end
981
+
982
+ def ChildElement.ns_tag
983
+ @@ns_tag
984
+ end
985
+
986
+ def ChildElement.module_name
987
+ @@module_name
988
+ end
989
+
990
+ def tag
991
+ @@tag
992
+ end
993
+
994
+ def ns
995
+ @@ns
996
+ end
997
+
998
+ def ns_tag
999
+ @@ns_tag
1000
+ end
1001
+
1002
+ def module_name
1003
+ @@module_name
1004
+ end
1005
+
1006
+ def attributes
1007
+ @@attributes
1008
+ end
1009
+
1010
+ def indexed_by
1011
+ :name
1012
+ end
1013
+
1014
+ def get_the_index
1015
+ @name
1016
+ end
1017
+
1018
+ def set_the_index(index)
1019
+ @name = index
1020
+ end
1021
+
1022
+ def substitute_in_visit(visitor)
1023
+ return visitor.substitute_in_visit_child_element(self) || self
1024
+ end
1025
+
1026
+ def before_visit(visitor)
1027
+ visitor.before_visit_child_element(self)
1028
+ end
1029
+
1030
+ def visit(visitor)
1031
+ visitor.visit_child_element(self)
1032
+ end
1033
+
1034
+ def after_visit(visitor)
1035
+ visitor.after_visit_child_element(self)
1036
+ end
1037
+
1038
+ Xampl::FromXML::register(ChildElement::tag, ChildElement::ns_tag, ChildElement)
1039
+ end
1040
+
1041
+ class Attribute
1042
+ include Xampl::XamplObject
1043
+ include Xampl::XamplWithoutContent
1044
+
1045
+ def Attribute.persisted?
1046
+ false
1047
+ end
1048
+
1049
+ def persisted?
1050
+ false
1051
+ end
1052
+
1053
+ @@tag = "attribute"
1054
+ @@ns = "http://xampl.com/generator"
1055
+ @@ns_tag = "{http://xampl.com/generator}attribute"
1056
+ @@module_name = "XamplGenerator"
1057
+ @@attributes = [
1058
+ [ :@namespace, "namespace" ],
1059
+ [ :@name, "name" ],
1060
+ ]
1061
+
1062
+ def namespace
1063
+ accessed
1064
+ @namespace
1065
+ end
1066
+
1067
+ def namespace=(v)
1068
+ accessed
1069
+ changed
1070
+ @namespace = v
1071
+ end
1072
+
1073
+ def name
1074
+ accessed
1075
+ @name
1076
+ end
1077
+
1078
+ def name=(v)
1079
+ accessed
1080
+ changed
1081
+ @name = v
1082
+ end
1083
+
1084
+ def initialize(index=nil)
1085
+ @name = index if index
1086
+ super()
1087
+
1088
+ @namespace = nil if not defined? @namespace
1089
+ @name = nil if not defined? @name
1090
+
1091
+ init_xampl_object
1092
+
1093
+ yield(self) if block_given?
1094
+ changed
1095
+ end
1096
+
1097
+ def clear_non_persistent_index_attributes
1098
+ @namespace = nil
1099
+ @name = nil
1100
+ end
1101
+
1102
+ def append_to(other)
1103
+ other.add_attribute(self)
1104
+ end
1105
+
1106
+ def Attribute.tag
1107
+ @@tag
1108
+ end
1109
+
1110
+ def Attribute.ns
1111
+ @@ns
1112
+ end
1113
+
1114
+ def Attribute.ns_tag
1115
+ @@ns_tag
1116
+ end
1117
+
1118
+ def Attribute.module_name
1119
+ @@module_name
1120
+ end
1121
+
1122
+ def tag
1123
+ @@tag
1124
+ end
1125
+
1126
+ def ns
1127
+ @@ns
1128
+ end
1129
+
1130
+ def ns_tag
1131
+ @@ns_tag
1132
+ end
1133
+
1134
+ def module_name
1135
+ @@module_name
1136
+ end
1137
+
1138
+ def attributes
1139
+ @@attributes
1140
+ end
1141
+
1142
+ def indexed_by
1143
+ :name
1144
+ end
1145
+
1146
+ def get_the_index
1147
+ @name
1148
+ end
1149
+
1150
+ def set_the_index(index)
1151
+ @name = index
1152
+ end
1153
+
1154
+ def substitute_in_visit(visitor)
1155
+ return visitor.substitute_in_visit_attribute(self) || self
1156
+ end
1157
+
1158
+ def before_visit(visitor)
1159
+ visitor.before_visit_attribute(self)
1160
+ end
1161
+
1162
+ def visit(visitor)
1163
+ visitor.visit_attribute(self)
1164
+ end
1165
+
1166
+ def after_visit(visitor)
1167
+ visitor.after_visit_attribute(self)
1168
+ end
1169
+
1170
+ Xampl::FromXML::register(Attribute::tag, Attribute::ns_tag, Attribute)
1171
+ end
1172
+
1173
+ class Options
1174
+ include Xampl::XamplObject
1175
+ include Xampl::XamplWithDataContent
1176
+
1177
+ def Options.persisted?
1178
+ false
1179
+ end
1180
+
1181
+ def persisted?
1182
+ false
1183
+ end
1184
+
1185
+ @@tag = "options"
1186
+ @@ns = "http://xampl.com/generator"
1187
+ @@ns_tag = "{http://xampl.com/generator}options"
1188
+ @@module_name = "XamplGenerator"
1189
+ @@attributes = [
1190
+ ]
1191
+ include IndexAttributeAsChild
1192
+ include ResolveAsChild
1193
+
1194
+ def initialize
1195
+ super
1196
+
1197
+ init_xampl_object
1198
+ init_data_content
1199
+ init_index_attribute_as_child
1200
+ init_resolve_as_child
1201
+
1202
+ yield(self) if block_given?
1203
+ changed
1204
+ end
1205
+
1206
+ def clear_non_persistent_index_attributes
1207
+ end
1208
+
1209
+ def append_to(other)
1210
+ other.add_options(self)
1211
+ end
1212
+
1213
+ def Options.tag
1214
+ @@tag
1215
+ end
1216
+
1217
+ def Options.ns
1218
+ @@ns
1219
+ end
1220
+
1221
+ def Options.ns_tag
1222
+ @@ns_tag
1223
+ end
1224
+
1225
+ def Options.module_name
1226
+ @@module_name
1227
+ end
1228
+
1229
+ def tag
1230
+ @@tag
1231
+ end
1232
+
1233
+ def ns
1234
+ @@ns
1235
+ end
1236
+
1237
+ def ns_tag
1238
+ @@ns_tag
1239
+ end
1240
+
1241
+ def module_name
1242
+ @@module_name
1243
+ end
1244
+
1245
+ def attributes
1246
+ @@attributes
1247
+ end
1248
+
1249
+ def substitute_in_visit(visitor)
1250
+ return visitor.substitute_in_visit_options(self) || self
1251
+ end
1252
+
1253
+ def before_visit(visitor)
1254
+ visitor.before_visit_options(self)
1255
+ end
1256
+
1257
+ def visit(visitor)
1258
+ visitor.visit_options(self)
1259
+ end
1260
+
1261
+ def after_visit(visitor)
1262
+ visitor.after_visit_options(self)
1263
+ end
1264
+
1265
+ Xampl::FromXML::register(Options::tag, Options::ns_tag, Options)
1266
+ end
1267
+
1268
+ class IndexAttribute
1269
+ include Xampl::XamplObject
1270
+ include Xampl::XamplWithoutContent
1271
+
1272
+ def IndexAttribute.persisted?
1273
+ false
1274
+ end
1275
+
1276
+ def persisted?
1277
+ false
1278
+ end
1279
+
1280
+ @@tag = "index-attribute"
1281
+ @@ns = "http://xampl.com/generator"
1282
+ @@ns_tag = "{http://xampl.com/generator}index-attribute"
1283
+ @@module_name = "XamplGenerator"
1284
+ @@attributes = [
1285
+ [ :@name, "name" ],
1286
+ [ :@persisted, "persisted" ],
1287
+ ]
1288
+
1289
+ def name
1290
+ accessed
1291
+ @name
1292
+ end
1293
+
1294
+ def name=(v)
1295
+ accessed
1296
+ changed
1297
+ @name = v
1298
+ end
1299
+
1300
+ def persisted
1301
+ accessed
1302
+ @persisted
1303
+ end
1304
+
1305
+ def persisted=(v)
1306
+ accessed
1307
+ changed
1308
+ @persisted = v
1309
+ end
1310
+
1311
+ def initialize(index=nil)
1312
+ @name = index if index
1313
+ super()
1314
+
1315
+ @name = nil if not defined? @name
1316
+ @persisted = nil if not defined? @persisted
1317
+
1318
+ init_xampl_object
1319
+
1320
+ yield(self) if block_given?
1321
+ changed
1322
+ end
1323
+
1324
+ def clear_non_persistent_index_attributes
1325
+ @name = nil
1326
+ @persisted = nil
1327
+ end
1328
+
1329
+ def append_to(other)
1330
+ other.add_index_attribute(self)
1331
+ end
1332
+
1333
+ def IndexAttribute.tag
1334
+ @@tag
1335
+ end
1336
+
1337
+ def IndexAttribute.ns
1338
+ @@ns
1339
+ end
1340
+
1341
+ def IndexAttribute.ns_tag
1342
+ @@ns_tag
1343
+ end
1344
+
1345
+ def IndexAttribute.module_name
1346
+ @@module_name
1347
+ end
1348
+
1349
+ def tag
1350
+ @@tag
1351
+ end
1352
+
1353
+ def ns
1354
+ @@ns
1355
+ end
1356
+
1357
+ def ns_tag
1358
+ @@ns_tag
1359
+ end
1360
+
1361
+ def module_name
1362
+ @@module_name
1363
+ end
1364
+
1365
+ def attributes
1366
+ @@attributes
1367
+ end
1368
+
1369
+ def indexed_by
1370
+ :name
1371
+ end
1372
+
1373
+ def get_the_index
1374
+ @name
1375
+ end
1376
+
1377
+ def set_the_index(index)
1378
+ @name = index
1379
+ end
1380
+
1381
+ def substitute_in_visit(visitor)
1382
+ return visitor.substitute_in_visit_index_attribute(self) || self
1383
+ end
1384
+
1385
+ def before_visit(visitor)
1386
+ visitor.before_visit_index_attribute(self)
1387
+ end
1388
+
1389
+ def visit(visitor)
1390
+ visitor.visit_index_attribute(self)
1391
+ end
1392
+
1393
+ def after_visit(visitor)
1394
+ visitor.after_visit_index_attribute(self)
1395
+ end
1396
+
1397
+ Xampl::FromXML::register(IndexAttribute::tag, IndexAttribute::ns_tag, IndexAttribute)
1398
+ end
1399
+
1400
+ class Resolve
1401
+ include Xampl::XamplObject
1402
+ include Xampl::XamplWithoutContent
1403
+
1404
+ def Resolve.persisted?
1405
+ false
1406
+ end
1407
+
1408
+ def persisted?
1409
+ false
1410
+ end
1411
+
1412
+ @@tag = "resolve"
1413
+ @@ns = "http://xampl.com/generator"
1414
+ @@ns_tag = "{http://xampl.com/generator}resolve"
1415
+ @@module_name = "XamplGenerator"
1416
+ @@attributes = [
1417
+ [ :@namespace, "namespace" ],
1418
+ [ :@pkg, "pkg" ],
1419
+ [ :@preferred_prefix, "preferred_prefix" ],
1420
+ ]
1421
+
1422
+ def namespace
1423
+ accessed
1424
+ @namespace
1425
+ end
1426
+
1427
+ def namespace=(v)
1428
+ accessed
1429
+ changed
1430
+ @namespace = v
1431
+ end
1432
+
1433
+ def pkg
1434
+ accessed
1435
+ @pkg
1436
+ end
1437
+
1438
+ def pkg=(v)
1439
+ accessed
1440
+ changed
1441
+ @pkg = v
1442
+ end
1443
+
1444
+ def preferred_prefix
1445
+ accessed
1446
+ @preferred_prefix
1447
+ end
1448
+
1449
+ def preferred_prefix=(v)
1450
+ accessed
1451
+ changed
1452
+ @preferred_prefix = v
1453
+ end
1454
+
1455
+ def initialize
1456
+ super
1457
+
1458
+ @namespace = nil if not defined? @namespace
1459
+ @pkg = nil if not defined? @pkg
1460
+ @preferred_prefix = nil if not defined? @preferred_prefix
1461
+
1462
+ init_xampl_object
1463
+
1464
+ yield(self) if block_given?
1465
+ changed
1466
+ end
1467
+
1468
+ def clear_non_persistent_index_attributes
1469
+ @namespace = nil
1470
+ @pkg = nil
1471
+ @preferred_prefix = nil
1472
+ end
1473
+
1474
+ def append_to(other)
1475
+ other.add_resolve(self)
1476
+ end
1477
+
1478
+ def Resolve.tag
1479
+ @@tag
1480
+ end
1481
+
1482
+ def Resolve.ns
1483
+ @@ns
1484
+ end
1485
+
1486
+ def Resolve.ns_tag
1487
+ @@ns_tag
1488
+ end
1489
+
1490
+ def Resolve.module_name
1491
+ @@module_name
1492
+ end
1493
+
1494
+ def tag
1495
+ @@tag
1496
+ end
1497
+
1498
+ def ns
1499
+ @@ns
1500
+ end
1501
+
1502
+ def ns_tag
1503
+ @@ns_tag
1504
+ end
1505
+
1506
+ def module_name
1507
+ @@module_name
1508
+ end
1509
+
1510
+ def attributes
1511
+ @@attributes
1512
+ end
1513
+
1514
+ def substitute_in_visit(visitor)
1515
+ return visitor.substitute_in_visit_resolve(self) || self
1516
+ end
1517
+
1518
+ def before_visit(visitor)
1519
+ visitor.before_visit_resolve(self)
1520
+ end
1521
+
1522
+ def visit(visitor)
1523
+ visitor.visit_resolve(self)
1524
+ end
1525
+
1526
+ def after_visit(visitor)
1527
+ visitor.after_visit_resolve(self)
1528
+ end
1529
+
1530
+ Xampl::FromXML::register(Resolve::tag, Resolve::ns_tag, Resolve)
1531
+ end
1532
+
1533
+ end
1534
+