Sha256: 63b166a6bb1e95f2b9a07ddc69e5cae3da5c5bfe38a5589b41efa93f529d0421

Contents?: true

Size: 639 Bytes

Versions: 396

Compression:

Stored size: 639 Bytes

Contents

local alphabet = 'abcdefghijklmnopqrstuvwxyz'
local decoder_ring = setmetatable({}, { __index = function() return '' end })

for i = 1, #alphabet do
  decoder_ring[alphabet:sub(i, i)] = alphabet:reverse():sub(i, i)
end

for i = 0, 9 do
  decoder_ring[tostring(i)] = tostring(i)
end

local function transcribe(plaintext)
  return plaintext:lower():gsub('.', decoder_ring)
end

local function split_chunks(s)
  local chunks = {}
  s:gsub('..?.?.?.?', function(chunk)
    table.insert(chunks, chunk)
  end)
  return table.concat(chunks, ' ')
end

return {
  encode = function(plaintext)
    return split_chunks(transcribe(plaintext))
  end
}

Version data entries

396 entries across 396 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.179 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.178 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.177 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.176 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.175 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.174 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.173 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.172 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.171 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.170 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.169 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.167 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.166 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.165 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.164 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.163 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.162 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.161 tracks/lua/exercises/atbash-cipher/example.lua
trackler-2.2.1.160 tracks/lua/exercises/atbash-cipher/example.lua