| 113 | } |
| 114 | |
| 115 | void initTree(EXT *tree, char* inputString, int size) { |
| 116 | inputString = convertToPostFix(inputString, size); |
| 117 | |
| 118 | int index = 0; |
| 119 | StackList stack; |
| 120 | initStack(&stack); |
| 121 | while(inputString[index] != '\0') { |
| 122 | if(!is_operator(inputString[index])) { |
| 123 | push(&stack, (void *) createEXTNode(inputString[index], NULL, NULL)); |
| 124 | } else { |
| 125 | Node* element2 = (Node *)peek(stack); |
| 126 | pop(&stack); |
| 127 | |
| 128 | Node* element1 = (Node *)peek(stack); |
| 129 | pop(&stack); |
| 130 | |
| 131 | push(&stack, (Node *)createEXTNode(inputString[index], element1, element2)); |
| 132 | } |
| 133 | index++; |
| 134 | } |
| 135 | |
| 136 | Node* finalTree = (Node *) peek(stack); |
| 137 | pop(&stack); |
| 138 | |
| 139 | *tree = finalTree; |
| 140 | |
| 141 | } |
| 142 | |
| 143 | void traverse(EXT tree) { |
| 144 | if(tree != NULL) { |
no test coverage detected