Refactor expression analysis function into separate functions for each kind of node
Refactor error handling in expression analysis
Sort tokens alphabetically
Merge primary analysis into expression analysis
Refactor prim_value into literal and prim_path
Refactor tempvars creation
Refactor expression rules in grammar
Refactor shortcircuit logic expression analysis
Refactor PrimPath analysis function
Refactor primary variable analysis
Remove unused code from fix_expression_types
Refactor PrimPath into PrimCall, PrimIndex, PrimSubstring and PrimSelector
Handle parsing errors
Removed PrimPath node
Move range check in Assign Expressions into assign analysis function
Refactor expression nodes creation
Moved fix_expression_types call into binary expression analysis function
flake8 fixes
Fixed casting in write statements
Added type checking in relational expressions