class ActiveFacts::Metamodel::ValueConstraint

Public Instance Methods

all_allowed_range_sorted() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1013
def all_allowed_range_sorted
  all_allowed_range.sort_by{|ar|
      ((min = ar.value_range.minimum_bound) && min.value.literal) ||
        ((max = ar.value_range.maximum_bound) && max.value.literal)
    }
end
all_constrained_role() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1030
def all_constrained_role
  Array(role_as_role_value_constraint) # Empty unless it's a role value constraint
end
as_cql() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1003
def as_cql
  "restricted to "+
    ( if regular_expression
        '/' + regular_expression + '/'
      else
        '{' + all_allowed_range_sorted.map{|ar| ar.to_s(false) }*', ' + '}'
      end
    )
end
describe() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 999
def describe
  as_cql
end
to_s() click to toggle source
# File lib/activefacts/metamodel/extensions.rb, line 1020
def to_s
  if all_allowed_range.size > 1
  "[" +
    all_allowed_range_sorted.map { |ar| ar.to_s(true) }*", " +
  "]"
  else
    all_allowed_range.single.to_s
  end
end