Skip to content

스토리지 (env) ​

컨트랙트별 KV(격리된 접두사). 현재 호스트는 UTF-8 문자열 키/값을 사용합니다. 쓰기는 fuel로 가격이 매겨지며 한도가 있습니다.

get_storage 작동 중 ​

text
get_storage(key_ptr, key_len, val_ptr, val_max) → i32

min(value_len, val_max)바이트를 val_ptr에 복사합니다. 키 없음 → 길이 0. 잘못된 UTF-8/포인터 → -1.

Fuel: FUEL_STORAGE_READ_BASE + PER_BYTE × len(기본값 800 + 5×len). fuel 소진(OOG) → -1.

유사 기능: CosmWasm storage.get, NEAR storage_read.

set_storage 작동 중 ​

text
set_storage(key_ptr, key_len, val_ptr, val_len)

오버레이와 storage_changes에 씁니다. 잘못된 UTF-8, fuel 소진(OOG), 증가 한도 초과 시 거부됩니다(쓰지 않음).

Fuel: FUEL_STORAGE_WRITE_BASE + PER_BYTE × (key+val)(기본값 5000 + 50×nbytes).

한도: 누적 새 바이트 ≤ MAX_STATE_GROWTH_BYTES_PER_TX(64 KiB).

remove_storage 계획됨 ​

text
remove_storage(key_ptr, key_len) → i32

키가 존재했으면 1, 아니면 0.

storage_has 계획됨 ​

text
storage_has(key_ptr, key_len) → i32

storage_usage 계획됨 ​

text
storage_usage() → i64

이 컨트랙트가 저장한 총 바이트 수(NEAR 호환).