1.0.8 • Published 6 years ago

eos-new-table v1.0.8

Weekly downloads
4
License
MIT
Repository
github
Last release
6 years ago

eos-new-table

Generate EOS C++ smart contract to create a table on the blockchain.

Install

Install it globally with:

npm i -g eos-new-table

Usage

Options

$ eos-new-table

Generate EOS C++ smart contract to create a table on the blockchain.
  Options:
  --name          Name of the element to be represented. e.g. user
  --attributes    Semicolon separated list of attributes of the element with their types.
                  e.g. 'std::string name; uint64_t token_amount'
  --table-name    Name of the table to be created. If not defined the name parameter will be used.
  --help          Show this help message.
  

Example

$ eos-new-table --name user --table-name users --attributes 'std::string name; uint64_t tokens_amount'

user.cpp

#include <eosiolib/eosio.hpp>

using namespace eosio;

class user_management : public eosio::contract {
 public:
   using contract::contract;

   user_management(account_name self):
     contract(self),
     users(_self, _self) {}

   /// @abi action
   void insert(std::string name, uint64_t tokens_amount) {
     users.emplace(_self, [&](auto& new_user) {
       new_user.id = users.available_primary_key();
       new_user.name = name;
       new_user.tokens_amount = tokens_amount;
     });
   }

 private:
   // @abi table users i64
   struct user {
     uint64_t id;
     std::string name;
     uint64_t tokens_amount;

     uint64_t primary_key() const { return id; };
     EOSLIB_SERIALIZE(user, (id)(name)(tokens_amount))
   };

   eosio::multi_index<N(users), user> users;
};

EOSIO_ABI(user_management, (insert))
1.0.8

6 years ago

1.0.7

6 years ago

1.0.6

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago