Module: PacioInfernoCore::Generator::Naming

Defined in:
lib/pacio_inferno_core/generator/naming.rb

Constant Summary collapse

{}.freeze

Class Method Summary collapse

Class Method Details



44
45
46
# File 'lib/pacio_inferno_core/generator/naming.rb', line 44

def ig_link(version)
  IG_LINKS[version]
end

.implementation_guide_idObject



16
17
18
# File 'lib/pacio_inferno_core/generator/naming.rb', line 16

def implementation_guide_id
  # Example: 'hl7.fhir.us.pacio-pfe'
end

.long_nameObject



24
25
26
# File 'lib/pacio_inferno_core/generator/naming.rb', line 24

def long_name
  # Example: 'US Core Server'
end

.module_nameObject



20
21
22
# File 'lib/pacio_inferno_core/generator/naming.rb', line 20

def module_name
  # Example: 'USCore', 'PacioSMP'
end

.prefixObject



11
12
13
14
# File 'lib/pacio_inferno_core/generator/naming.rb', line 11

def prefix
  # Example: 'us_core', 'smp'
  # raise NotImplementedError, "#{self.class} must implement #naming_prefix"
end

.resource_has_multiple_profiles?(resource) ⇒ Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/pacio_inferno_core/generator/naming.rb', line 28

def resource_has_multiple_profiles?(resource)
  resources_with_multiple_profiles.include? resource
end

.resources_with_multiple_profilesObject



7
8
9
# File 'lib/pacio_inferno_core/generator/naming.rb', line 7

def resources_with_multiple_profiles
  []
end

.snake_case_for_profile(group_metadata) ⇒ Object



32
33
34
35
36
37
38
# File 'lib/pacio_inferno_core/generator/naming.rb', line 32

def snake_case_for_profile()
  resource = .resource
  return resource.underscore unless resource_has_multiple_profiles?(resource)

  .name
    .delete_prefix("#{prefix.downcase}_").underscore
end

.upper_camel_case_for_profile(group_metadata) ⇒ Object



40
41
42
# File 'lib/pacio_inferno_core/generator/naming.rb', line 40

def upper_camel_case_for_profile()
  snake_case_for_profile().camelize
end