命名

モジュール (Module)

  1. モジュール名は snake_case にする必要があります。
  2. モジュール名は説明的なものにし、長すぎないものにしてください。
module book::conventions { /* ... */ }
module book::common_pracices { /* ... */ }

定数 (Constant)

  1. 定数は SCREAMING_SNAKE_CASE である必要があります。
  2. エラー定数は EPascalCase
const MAX_PRICE: u64 = 1000;
const EInvalidInput: u64 = 0;

関数 (Function)

  1. 関数名は snake_case にする必要があります。
  2. 関数名は説明的なものにする必要があります。
public fun add(a: u64, b: u64): u64 { a + b }
public fun create_if_not_exists() { /* ... */ }

構造体 (Struct)

  1. 構造体名は PascalCase である必要があります。
  2. 構造体フィールドは ``snake_case である必要があります。
  3. 能力には Cap という接尾辞を付ける必要があります。
public struct Hero has key {
    id: UID
    value: u64,
    another_value: u64,
}

public struct AdminCap has key { id: UID }

構造体メソッド (Struct Method)

  1. 構造体メソッドは snake_case にある必要があります。