int FindNamedBlock(string blockName)
{
for (var i = this.stack.Count - 1; i >= 0; i--) {
if (this.stack.Storage [i].Kind == Value.Kinds.NamedBlock
&& this.stack.Storage [i].NamedBlockValue.Name == blockName) {
return i;
}
}
this.RaiseShovelError (
String.Format ("Cannot find block '{0}'.", blockName));
return -1;
}