Source Code

;; Yield Vault V20 - DeFi Contract
;; Generated by Clarity Hub
;; Category: DeFi


(define-constant ERR_UNAUTHORIZED (err u100))
(define-constant ERR_NOT_OWNER (err u101))
(define-constant ERR_INVALID_AMOUNT (err u102))
(define-constant ERR_ALREADY_EXISTS (err u103))
(define-constant ERR_NOT_FOUND (err u104))


(define-data-var contract-owner principal tx-sender)
(define-public (set-owner (new-owner principal))
    (begin
        (asserts! (is-eq tx-sender (var-get contract-owner)) ERR_NOT_OWNER)
        (var-set contract-owner new-owner)
        (ok true))
)


(define-public (deposit (amount uint))
    (stx-transfer? amount tx-sender (as-contract tx-sender))
)
(define-public (withdraw (amount uint))
    (as-contract (stx-transfer? amount tx-sender tx-sender))
)

Functions (3)

FunctionAccessArgs
set-ownerpublicnew-owner: principal
depositpublicamount: uint
withdrawpublicamount: uint