All Downloads are FREE. Search and download functionalities are using the official Maven repository.

cljs.source_map.base64.cljs Maven / Gradle / Ivy

;   Copyright (c) Rich Hickey. All rights reserved.
;   The use and distribution terms for this software are covered by the
;   Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php)
;   which can be found in the file epl-v10.html at the root of this distribution.
;   By using this software in any fashion, you are agreeing to be bound by
;   the terms of this license.
;   You must not remove this notice, or any other, from this software.

(ns cljs.source-map.base64)

(def chars64 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/")
(def char->int (zipmap chars64 (range 0 64)))
(def int->char (zipmap (range 0 64) chars64))

(defn encode [n]
  (let [e (find int->char n)]
   (if e
     (second e)
     (throw (js/Error. (str "Must be between 0 and 63: " n))))))

(defn decode [c]
  (let [e (find char->int c)]
   (if e
     (second e)
     (throw (js/Error. (str "Not a valid base 64 digit: " c))))))




© 2015 - 2025 Weber Informatics LLC | Privacy Policy