Sha256: 50538ff959f2d4e2defba60665e3c287125c1149b44b6d1900fd15ac2aa31b04

Contents?: true

Size: 885 Bytes

Versions: 38

Compression:

Stored size: 885 Bytes

Contents

module CfnDsl
  # Plural names for lists of content objects
  module Plurals
    module_function

    @plurals = {
      'AssumeRolePolicyDocument' => 'AssumeRolePolicyDocument',
      'CreationPolicy'           => 'CreationPolicy',
      'DBSecurityGroupIngress'   => 'DBSecurityGroupIngress',
      'Metadata'                 => 'Metadata',
      'Policy'                   => 'Policies',
      'PolicyDocument'           => 'PolicyDocument',
      'Property'                 => 'Properties',
      'SecurityGroupEgress'      => 'SecurityGroupEgress',
      'SecurityGroupIngress'     => 'SecurityGroupIngress',
      'UpdatePolicy'             => 'UpdatePolicy'
    }
    @singles = @plurals.invert

    def pluralize(name)
      @plurals.fetch(name.to_s) { |key| key + 's' }
    end

    def singularize(name)
      @singles.fetch(name.to_s) { |key| key[0..-2] }
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
cfndsl-0.16.6 lib/cfndsl/plurals.rb
cfndsl-0.16.5 lib/cfndsl/plurals.rb
cfndsl-0.16.3 lib/cfndsl/plurals.rb
cfndsl-0.16.2 lib/cfndsl/plurals.rb
cfndsl-0.16.1 lib/cfndsl/plurals.rb
cfndsl-0.15.3 lib/cfndsl/plurals.rb
cfndsl-0.15.2 lib/cfndsl/plurals.rb
cfndsl-0.15.1 lib/cfndsl/plurals.rb
cfndsl-0.15.0 lib/cfndsl/plurals.rb
cfndsl-0.14.0 lib/cfndsl/plurals.rb
cfndsl-0.13.1 lib/cfndsl/plurals.rb
cfndsl-0.13.0 lib/cfndsl/plurals.rb
cfndsl-0.12.11 lib/cfndsl/plurals.rb
cfndsl-0.12.10 lib/cfndsl/plurals.rb
cfndsl-0.12.9 lib/cfndsl/plurals.rb
cfndsl-0.12.8 lib/cfndsl/plurals.rb
cfndsl-0.12.7 lib/cfndsl/plurals.rb
cfndsl-0.12.6 lib/cfndsl/plurals.rb
cfndsl-0.12.5 lib/cfndsl/plurals.rb
cfndsl-0.12.4 lib/cfndsl/plurals.rb