Sha256: 3c330061e4c71c00ac9a0e179f74f8369a82b9ca3d16301110c8d3506f3910c9
Contents?: true
Size: 1.04 KB
Versions: 5
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
5 entries across 5 versions & 1 rubygems