Sha256: 3f47357c8447a450c40c313bbdced953d46162b928f7d2d9c0348ef9f8c3c47a
Contents?: true
Size: 1.04 KB
Versions: 3
Compression:
Stored size: 1.04 KB
Contents
module FHIR class Field attr_accessor :name attr_accessor :local_name attr_accessor :path attr_accessor :type attr_accessor :type_profiles attr_accessor :min attr_accessor :max attr_accessor :valid_codes attr_accessor :binding attr_accessor :regex attr_accessor :constraint def initialize(name = '') @name = name @local_name = fix_name(@name) @type_profiles = [] @valid_codes = [] end def serialize hash = {} instance_variables.each do |v| hash[v.to_s[1..-1]] = instance_variable_get(v) end hash.delete('name') hash.keep_if do |_key, value| !value.nil? && ((value.is_a?(Hash) && !value.empty?) || (value.is_a?(Array) && !value.empty?) || (!value.is_a?(Hash) && !value.is_a?(Array)) ) end hash end def fix_name(name) fix = nil fix = "local_#{name}" if %w(class method resourceType).include?(name) fix end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
fhir_models-1.8.2 | lib/fhir_models/bootstrap/field.rb |
fhir_models-1.8.1 | lib/fhir_models/bootstrap/field.rb |
fhir_models-1.8.0 | lib/fhir_models/bootstrap/field.rb |