Sha256: 288c3168873b72d82fe368197b0b04023c2ceeefeb4d60b6e8bf0b7bb87791b2
Contents?: true
Size: 581 Bytes
Versions: 21
Compression:
Stored size: 581 Bytes
Contents
# frozen_string_literal: true require 'immutable-struct' module RubyVault module Options class Name < ImmutableStruct.new(:name) def initialize(name) super(name: name.to_s) end def name "-#{without_prefix}" end alias to_s name def as_singular_key snake_case.to_sym end def as_plural_key "#{snake_case}s".to_sym end private def without_prefix @name.sub(/^-+/, '') end def snake_case without_prefix.gsub('-', '_') end end end end
Version data entries
21 entries across 21 versions & 1 rubygems