星雲鏈之NRC20代幣合約解讀

2021-09-02 17:25:35 字數 2363 閱讀 1136

2、合約**:

// ==== wittcism.com token smart contract for nebulas ====

// name: test coin

// symbol: test

// decimal: 8

// totalsupply: 2,000,000,000 (2 billion)

// deploy parameter: ["test coin","test", 8, 2000000000]

'use strict';

var allowed = function(obj) ;

this.parse(obj);

}allowed.prototype = ,

//將obj的value轉換為大數

parse: function(obj) }},

//通過key,獲得value

get: function(key) ,

//修改、新增allow

set: function(key, value)

}//代幣

var standardtoken = function() ,

stringify: function(o)

}});

"balances": ,

stringify: function(o)

},"allowed": ,

stringify: function(o)

}});

};//初始化,獲取傳入的引數:["test coin","test", 8, 2000000000]

standardtoken.prototype = ,

// returns the name of the token

name: function() ,

// returns the symbol of the token

symbol: function() ,

// returns the number of decimals the token uses

decimals: function() ,

totalsupply: function() ,

balanceof: function(owner) else

},//轉賬

transfer: function(to, value)

//from執行合約的當前交易的源位址

var from = blockchain.transaction.from;

//獲取源位址的餘額

var balance = this.balances.get(from) || new bignumber(0);

//餘額小於0

if (balance.lt(value))

//sub

this.balances.set(from, balance.sub(value));

var tobalance = this.balances.get(to) || new bignumber(0);

this.balances.set(to, tobalance.add(value));

this.transferevent(true, from, to, value);

},transferfrom: function(from, to, value) else

},transferevent: function(status, from, to, value)

});},

var from = blockchain.transaction.from;

var oldvalue = this.allowance(from, spender);

if (oldvalue != currentvalue.tostring())

var balance = new bignumber(this.balanceof(from));

var value = new bignumber(value);

if (value.lt(0) || balance.lt(value))

var owned = this.allowed.get(from) || new allowed();

owned.set(spender, value);

this.allowed.set(from, owned);

},event.trigger(this.name(),

});},

allowance: function(owner, spender)

}return "0";

}};module.exports = standardtoken;

C 從零開始區塊鏈 P2P模組之節點廣播

之前忘了說了,現在補上 主要有以下幾個方案 該方案的優點是協議自身支援,實現簡單,高效。但其缺點也是致命的,就是只能在同一區域網內才能進行廣播,限制太大。和廣播的方案差不多,雖然udp協議支援在外網上的組播,但很依賴於網路裝置是否支援。很遺憾,現實中絕大部分的網路裝置是不支援的,同樣只能在同一區域網...

第六周專案2 資料結構之自建演算法庫 鏈棧

1.標頭檔案 listack.h,包含定義鏈棧資料結構的 巨集定義 要實現演算法的函式的宣告 ifndef listack h included define listack h included typedef char elemtype typedef struct linknode lista...

第八周專案2 資料結構之自建演算法庫 鏈串

問題及描述 檔名稱 listring.cpp,main.cpp,listring.h 完成日期 2015年11月1日 版本號 codeblocks 問題描述 定義鏈串的儲存結構,實現其基本運算,並完成測試。輸入描述 無 程式輸出 鏈串演算法的結果 ifndef listring h included...