public static Statement FindFirstData(Statement stat) { if (stat.GetExprents() != null) { return(stat); } else if (stat.IsLabeled()) { // FIXME: Why?? return(null); } switch (stat.type) { case Statement.Type_Sequence: case Statement.Type_If: case Statement.Type_Root: case Statement.Type_Switch: case Statement.Type_Syncronized: { return(FindFirstData(stat.GetFirst())); } default: { return(null); } } }