Example #1
0
void CCAcc::invoke(const string& method, const AmArg& args, AmArg& ret)
{
    if(method == "getCredit"){
      assertArgCStr(args.get(0));
      ret.push(getCredit(args.get(0).asCStr()));
    } else if(method == "subtractCredit"){
      assertArgCStr(args.get(0));
      assertArgInt(args.get(1));
      ret.push(subtractCredit(args.get(0).asCStr(),
			      args.get(1).asInt()));	
    } else if(method == "addCredit"){
      assertArgCStr(args.get(0));
      assertArgInt(args.get(1));
      ret.push(addCredit(args.get(0).asCStr(),
			 args.get(1).asInt()));	
    } else if(method == "setCredit"){
      assertArgCStr(args.get(0));
      assertArgInt(args.get(1));
      ret.push(setCredit(args.get(0).asCStr(),
			 args.get(1).asInt()));	
    } else if(method == "_list"){
      ret.push("getCredit");
      ret.push("subtractCredit");
      ret.push("setCredit");
      ret.push("addCredit");
    }
    else
	throw AmDynInvoke::NotImplemented(method);
}
Example #2
0
void MoneyManager::makeDeposit(double& startCredit, int& deposit)
{
	startCredit += deposit;
	deposit = 0;
	setCredit(startCredit);
}