public new static U32AndTestStatement Parse(ref string strExpr) { if (strExpr.Length <= 2 || strExpr[0] != '&' || strExpr[1] != '&') { return(null); } strExpr = strExpr.Substring(2); var baseStatement = U32TestStatement.Parse(ref strExpr); return(new U32AndTestStatement(baseStatement.Left, baseStatement.Right)); }
public static U32Expression Parse(String strExpr) { strExpr = strExpr.Replace(" ", ""); List <IU32Statement> statements = new List <IU32Statement>(); while (strExpr.Length != 0) { if (strExpr[0] == '&' && strExpr[1] == '&') { statements.Add(U32AndTestStatement.Parse(ref strExpr)); } else { statements.Add(U32TestStatement.Parse(ref strExpr)); } } return(new U32Expression(statements)); }