T) { case 'NUM': return new ParseNumber($element, $parent); case 'RE': return new ParseReturn($element, $parent); case 'RNF': return new ParseField($element, $parent); case 'RNFX': return new ParseFixed($element, $parent); case 'ARR': return new ParseArray($element, $parent); case 'ME': return new ParseMembE($element, $parent); case 'AE': return new ParseAssigmentExpression($element, $parent); case 'VAR': return new ParseVariable($element, $parent); case 'STR': return new ParseString($element, $parent); case 'BE': return new ParseBinaryExpression($element, $parent); case 'PE': return new ParseParenthesis($element, $parent); case 'BLO': return new ParseBlock($element, $parent); case "IF": return new ParseIfStatement($element, $parent); case "BL": return new ParseBool($element, $parent); case "BR": return new ParseBreak($element, $parent); case "CE": return new ParseCondE($element, $parent); case 'FC': return new ParseCExpression($element, $parent); case 'FOR': return new ParseFor($element, $parent); case "FE": return new ParseForE($element, $parent); case 'Null': return new ParseNull($element, $parent); case 'UE': return new ParseUnaryExpression($element, $parent); default: throw new Exception('Invalid token ' . $element->T); } } }