stacks-utils-utils-counter-v1

SP2PEBKJ2W1ZDDF2QQ6Y4FXKZEDPT9J9R2NKD9WJB

Source Code

(define-map counters (string-ascii 30) uint)
(define-read-only (get-counter (name (string-ascii 30))) (default-to u0 (map-get? counters name)))
(define-public (increment (name (string-ascii 30)))
  (let ((current (get-counter name)))
    (map-set counters name (+ current u1))
    (ok (+ current u1))))
(define-public (decrement (name (string-ascii 30)))
  (let ((current (get-counter name)))
    (if (> current u0)
      (begin (map-set counters name (- current u1)) (ok (- current u1)))
      (err u0))))
(define-public (reset (name (string-ascii 30)))
  (begin (map-set counters name u0) (ok u0)))

Functions (4)

FunctionAccessArgs
get-counterread-onlyname: (string-ascii 30
incrementpublicname: (string-ascii 30
decrementpublicname: (string-ascii 30
resetpublicname: (string-ascii 30