static void Main(String[] args) { Console.WriteLine("\nTesting the IfStatementElement class"); Console.WriteLine("\n==========================================\n"); EqualityOperationElement elem = new EqualityOperationElement(); VariableElement var_elem = new VariableElement(); var_elem.setText("a"); elem.setequalityLhs(var_elem); IntegerElement int_elem = new IntegerElement(); int_elem.setText("1"); elem.setequalityRhs(int_elem); VariableElement elem2 = new VariableElement(); elem2.setText("b"); IfStatementElement if_elem = new IfStatementElement(); if_elem.CONDITION= elem; ScalarVariableDeclaration scalar_elem = new ScalarVariableDeclaration(); scalar_elem.setType("int"); scalar_elem.setVar(var_elem); List<Element> Iflist = new List<Element>(); Iflist.Add(scalar_elem); if_elem.IFCODE = Iflist; List<Element> ElseList = new List<Element>(); ElseList.Add(int_elem); if_elem.ELSECODE = ElseList; Console.Write("IfStatement element " + var_elem1.GetType().ToString()+" "+ var_elem1.getText().ToString() + "\n"); EqualityOperationElement eq_elem = new EqualityOperationElement(); eq_elem = (EqualityOperationElement)if_elem.CONDITION; Console.Write("The condition has : "+eq_elem.ToString()+"->"+eq_elem.getequalityLhs()+" == "+eq_elem.getequalityRhs()+"\n"); List<Element> elem_list = new List<Element>(); elem_list = if_elem.IFCODE; for (int i = 0; i < elem_list.Count; i++) { Console.Write("The if loop list has " + elem_list[i].ToString() + "\n"); } elem_list = if_elem.ELSECODE; for (int i = 0; i < elem_list.Count; i++) { Console.Write("The Else loop list has " + elem_list[i].ToString() + "\n"); } }
public abstract void VisitIfStatementElement(IfStatementElement element);
public override void VisitIfStatementElement(IfStatementElement element) { Console.Write("if "); VisitElement(element.CONDITION); Console.Write("\n{\n\t"); List<Element> If_code = new List<Element>(); If_code = element.IFCODE; for (int i = 0; i < If_code.Count; i++) { VisitElement(If_code[i]); if (i < (If_code.Count - 1)) { Console.Write("\n\t"); } else { Console.Write("\n"); } } Console.Write("}\n"); List<Element> else_code = new List<Element>(); else_code = element.ELSECODE; if (else_code!= null) { Console.Write("else\n{\n"); for (int i = 0; i < else_code.Count; i++) { VisitElement(else_code[i]); if (i < (else_code.Count - 1)) { Console.Write("\n\t"); } else { Console.Write("\n"); } } Console.Write("}\n"); } }
public override void VisitIfStatementElement(IfStatementElement element) { if (inParallelFor == 1) { createIf(element); createElse(element); } else { } }
private void createElse(IfStatementElement element) { //struct parallelString.Append("else"); parallelString.Append("{\n"); for (int i = 0; element.ELSECODE.Count != 0 && i < element.ELSECODE.Count; i++) { VisitElement(element.ELSECODE[i]); parallelString.Append(";"); } parallelString.Append("\n}"); }
private void createIf(IfStatementElement element) { string strlhs = ""; string strrhs = ""; if (element.getLhs() is VariableElement) strlhs = ((VariableElement)element.getLhs()).getText(); //struct parallelString.Append("if(" + strlhs); if (element.OP == "eq") parallelString.Append("=="); else if (element.OP == "ne") parallelString.Append("!="); else if (element.OP == "lt") parallelString.Append("<"); else if (element.OP == "le") parallelString.Append("<="); else if (element.OP == "gt") parallelString.Append(">"); else if (element.OP == "ge") parallelString.Append(">="); if (element.getRhs() is VariableElement) strrhs = ((VariableElement)element.getRhs()).getText(); else if(element.getRhs() is IntegerElement) strrhs = ((IntegerElement)element.getRhs()).getText(); else if (element.getRhs() is DoubleElement) strrhs = ((DoubleElement)element.getRhs()).getText(); else if (element.getRhs() is StringElement) strrhs = ((StringElement)element.getRhs()).getText(); parallelString.Append(strrhs + ")" + "\n" + "{\n"); for (int i = 0; element.IFCODE.Count != 0 && i < element.IFCODE.Count; i++) { VisitElement(element.IFCODE[i]); parallelString.Append(";"); } parallelString.Append("\n}"); }
public override void VisitIfStatementElement(IfStatementElement element) { String lhs = getIfElement(element.getLhs()); //.getConditionLhs()); String rhs = getIfElement(element.getRhs()); //.getConditionRhs()); if (lhs == null || rhs == null) { Console.WriteLine("\n Variable not allowed. "); return; } if (mVariableMap.ContainsKey(lhs) == false || mVariableMap.ContainsKey(rhs) == false) Console.WriteLine("\n Invalid Comparison."); if ( (element.OP == "eq" && String.Compare(lhs, rhs) == 0) || (element.OP == "ne" && String.Compare(lhs, rhs) != 0) || (element.OP == "lt" && String.Compare(lhs, rhs) < 0) || (element.OP == "le" && String.Compare(lhs, rhs) <= 0) || (element.OP == "gt" && String.Compare(lhs, rhs) < 0) || (element.OP == "ge" && String.Compare(lhs, rhs) >= 0) ) { Console.WriteLine("\n Loop condition true - entered true. "); } else { if (element.ELSECODE.Count != 0) { Console.WriteLine("\n Loop condition false - entered else. "); } } //throw new NotImplementedException(); }
public override void VisitIfStatementElement(IfStatementElement element) { //throw new NotImplementedException(); }