calcIntrinsicGas static method
Calculate roughly the gas from a list of clauses.
@param clauses A list of clauses. @return
Implementation
static int calcIntrinsicGas(List<Clause> clauses) {
const int transactionGas = 5000;
const int clauseGas = 16000;
const int clauseContrctCreation = 48000;
// Must pay a static fee even empty!
if (clauses.isEmpty) {
return transactionGas + clauseGas;
}
int sum = 0;
sum += transactionGas;
for (Clause c in clauses) {
int clauseSum = 0;
if (c.to.toBytes().isEmpty) {
// contract creation
clauseSum += clauseContrctCreation;
} else {
// or a normal clause
clauseSum += clauseGas;
}
clauseSum += calcDataGas(c.data.toBytes());
sum += clauseSum;
}
return sum;
}