Mercurial > projects > ddmd
view dmd/InlineCostState.d @ 135:af1bebfd96a4 dmd2037
dmd 2.038
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Mon, 13 Sep 2010 22:19:42 +0100 |
parents | e28b18c23469 |
children |
line wrap: on
line source
module dmd.InlineCostState; import dmd.common; import dmd.FuncDeclaration; import dmd.Expression; struct InlineCostState { int nested; int hasthis; int hdrscan; // !=0 if inline scan for 'header' content FuncDeclaration fd; } const int COST_MAX = 250; int arrayInlineCost(InlineCostState* ics, Expressions arguments) { int cost = 0; if (arguments) { foreach (e; arguments) { if (e) cost += e.inlineCost(ics); } } return cost; }