Module: StoryKey::ClassMethods

Included in:
StoryKey
Defined in:
lib/story_key/class_methods.rb

Instance Method Summary collapse

Instance Method Details

#decodeObject



7
8
9
# File 'lib/story_key/class_methods.rb', line 7

def decode(...)
  StoryKey::Decoder.call(...)
end

#encodeObject



3
4
5
# File 'lib/story_key/class_methods.rb', line 3

def encode(...)
  StoryKey::Encoder.call(...)
end

#generate(bitsize: StoryKey::DEFAULT_BITSIZE) ⇒ Object



15
16
17
18
19
20
# File 'lib/story_key/class_methods.rb', line 15

def generate(bitsize: StoryKey::DEFAULT_BITSIZE)
  key = StoryKey::Generator.call(bitsize:)
  encoded = encode(key:, bitsize:)
  raise 'An error occurred!' if key != decode(story: encoded.text)
  [key, encoded]
end

#recoverObject



11
12
13
# File 'lib/story_key/class_methods.rb', line 11

def recover
  StoryKey::Console::Recover.call
end