module OpenEHR::AM::Archetype::ConstraintModel::Primitive::CTimeModule

Attributes

list[RW]
millisecond_validity[R]
minute_validity[R]
pattern[R]
range[RW]
second_validity[R]

Public Instance Methods

millisecond_validity=(millisecond_validity) click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 242
def millisecond_validity=(millisecond_validity)
  @millisecond_validity = millisecond_validity
end
minute_validity=(minute_validity) click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 222
def minute_validity=(minute_validity)
  if (minute_validity == ValidityKind::OPTIONAL &&
      @second_validity == ValidityKind::MANDATORY) ||
      (minute_validity == ValidityKind::DISALLOWED &&
       @second_validity != ValidityKind::DISALLOWED)
    raise ArgumentError, 'minute_validity is invalid'
  end
  @minute_validity = minute_validity
end
pattern=(pattern) click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 218
def pattern=(pattern)
  @pattern = pattern if valid_pattern? pattern
end
second_validity=(second_validity) click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 232
def second_validity=(second_validity)
  if (second_validity == ValidityKind::OPTIONAL &&
      @millisecond_validity == ValidityKind::MANDATORY) ||
      (second_validity == ValidityKind::DISALLOWED &&
       @millisecond_validity != ValidityKind::DISALLOWED)
    raise ArgumentError, 'second_validity is invalid'
  end
  @second_validity = second_validity
end
validity_is_range?() click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 246
def validity_is_range?
  return !@range.nil?
end

Protected Instance Methods

valid_pattern?(pattern) click to toggle source
# File lib/openehr/am/archetype/constraint_model/primitive.rb, line 251
def valid_pattern?(pattern)
  if /^([Hh?X]{2})(:([Mm?X]{2})(:([Ss?X]{2}))?)?$/ =~ pattern
    true
  else
    false
  end
end