Changeset 32 for ruby/trunk/models/am
- Timestamp:
- May 6, 2008, 12:18:06 AM (16 years ago)
- Location:
- ruby/trunk/models/am/archetype/constraint_model
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/models/am/archetype/constraint_model/archetype_constraint.rb
r23 r32 19 19 @occurrences = args[:occurrences] if args[:occurrences] 20 20 @rm_type_name = args[:rm_type_name] if args[:rm_type_name] 21 end 22 23 def self.create(args = { }, &block) 24 c_object = new(args) 25 if block_given? 26 yield c_object 27 end 28 return c_object 21 29 end 22 30 end … … 44 52 class C_PRIMITIVE_OBJECT < C_DEFINED_OBJECT 45 53 attr_accessor :item 46 54 47 55 def initialize(args = { }) 48 56 @attributes = args[:item] if args[:item] … … 53 61 class C_COMPLEX_OBJECT < C_DEFINED_OBJECT 54 62 attr_accessor :attributes, :attributes_valid 55 63 56 64 def initialize(args = { }) 57 65 @attributes = args[:attributes] ? args[:attributes] : [] … … 73 81 74 82 class C_REFERENCE_OBJECT < C_OBJECT 75 76 83 end 77 84 78 85 class ARCHETYPE_INTERNAL_REF < C_REFERENCE_OBJECT 79 86 attr_accessor :target_path 80 87 end 81 88 82 89 class ARCHETYPE_SLOT < C_REFERENCE_OBJECT 83 90 attr_accessor :includes, :excludes 91 92 def self.create(args = { }, &block) 93 archetype_slot = new(args) 94 archetype_slot.includes = args[:includes] 95 archetype_slot.excludes = args[:excludes] 96 if block_given? 97 yield archetype_slot 98 end 99 return archetype_slot 100 end 84 101 end 85 102 86 103 class CONSTRAINT_REF < C_REFERENCE_OBJECT 87 104 attr_accessor :reference 105 106 def self.create(args = { }, &block) 107 constraint_ref = new(args) 108 constraint_ref.reference = args[:reference] 109 if block_given? 110 yield constraint_ref 111 end 112 return constraint_ref 113 end 88 114 end 89 115 -
ruby/trunk/models/am/archetype/constraint_model/primitive.rb
r26 r32 7 7 8 8 class C_PRIMITIVE 9 10 def initialize 11 raise "abstract class" 12 end 13 14 def self.create(args = {}) 15 instance = new(args) 16 17 if block_given? 18 yield instance 19 end 20 return instance 21 end 22 23 9 24 def assumed_value 10 25 raise NotImplementedError, "assumed_value should be implemented" 11 26 end 27 12 28 def default_value 13 29 raise NotImplementedError, "assumed_value should be implemented" 14 30 end 31 15 32 def has_assumed_value? 16 33 assumed_value != nil 17 34 end 35 18 36 def valid_value? 19 37 raise NotImplementedError, "valid_value? should be implemented" … … 50 68 else 51 69 (a_value && @true_valid) || (!a_value && @false_valid) 52 end 70 end 53 71 end 54 72 … … 58 76 if !true_valid && !false_valid 59 77 raise ArgumentError, "Either true_valid or false_valid must be true" 60 end 78 end 61 79 end 62 80 end # of C_Boolean 63 81 64 82 class C_STRING < C_PRIMITIVE 65 83 attr_accessor :list, :assumed_value, :list_open, :pattern 84 85 def initialize(args = { }) 86 @list, @assumed_value, @list_open, @pattern = args[:list], args[:assumed_value], args[:list_open], args[:pattern] 87 end 66 88 end 67 89 68 90 class C_INTEGER < C_PRIMITIVE 69 91 attr_accessor :list, :range, :assumed_value 92 93 def initialize(args = { }) 94 @list, @range, @assumed_value = args[:list], args[:range], args[:assumed_value] 95 end 96 97 def self.create(args = {}) 98 c_primitive = new(args) 99 100 if block_given? 101 yield c_primitive 102 end 103 return c_primitive 104 end 70 105 end 71 106 72 107 class C_REAL < C_PRIMITIVE 73 108 attr_accessor :list, :range, :assumed_value 109 110 def initialize(args = { }) 111 @list, @range, @assumed_value = args[:list], args[:range], args[:assumed_value] 112 end 74 113 end 75 114 76 115 class C_TIME < C_PRIMITIVE 77 116 attr_accessor :assumed_value, :milli_second_validity, :minute_validity, :range, :second_validity, :timezone_validity 117 def initialize(args = { }) 118 @assumed_value, @milli_second_validity, @minute_validity, @month_validity, @range, @second_validity, @timezone_validity = args[:assumed_value], args[:milli_second_validity], args[:minute_validity], args[:range], args[:second_validity], args[:timezone_validity] 119 end 78 120 end 79 121 80 122 class C_DATE < C_PRIMITIVE 81 123 attr_accessor :assumed_value, :day_validity, :hour_validity, :month_validity, :range, :timezone_validity 124 def initialize(args = { }) 125 @assumed_value, @day_validity, @hour_validity, @month_validity, @range, @timezone_validity = args[:assumed_value], args[:day_validity], args[:hour_validity], args[:month_validity], args[:range], args[:timezone_validity] 126 end 82 127 end 83 128 84 129 class C_DATE_TIME < C_PRIMITIVE 85 130 attr_accessor :assumed_value, :day_validity, :hour_validity, :milli_second_validity, :minute_validity, :month_validity, :range, :second_validity, :timezone_validity 131 def initialize(args = { }) 132 @assumed_value, @day_validity, @hour_validity, @milli_second_validity, @minute_validity, @month_validity, @range, @second_validity, @timezone_validity = args[:assumed_value], args[:day_validity], args[:hour_validity], args[:milli_second_validity], args[:minute_validity], args[:month_validity], args[:range], args[:second_validity], args[:timezone_validity] 133 end 86 134 end 87 135 88 136 class C_DURATION < C_PRIMITIVE 89 137 attr_accessor :years_allowed, :months_allowed, :weeks_allowed, :days_allowed, :hours_allowed, :minutes_allowed, :seconds_allowed, :fractional_seconds_allowed, :range, :assumed_value 138 139 def initialize(args = { }) 140 @years_allowed, @months_allowed, @weeks_allowed, @days_allowed, @hours_allowed, @minutes_allowed, @seconds_allowed, @fractional_seconds_allowed, @range, @assumed_value = args[:years_allowed], args[:months_allowed], args[:weeks_allowed], args[:days_allowed], args[:hours_allowed], args[:minutes_allowed], args[:seconds_allowed], args[:fractional_seconds_allowed], args[:range], args[:assumed_value] 141 end 90 142 end 91 143
Note:
See TracChangeset
for help on using the changeset viewer.