michal-kapala / jitterbit-script

Static typechecker and interpreter for Jitterbit scripts

Home Page:https://npmjs.com/package/jitterbit-script

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

operators implementation

michal-kapala opened this issue · comments

Jitterbit-supported operators implementation.
Operator precedence can be found here.

Assignment

Jitterbit Studio supports 3 assignments:

  • =
  • -=
  • +=

Binary

Math, comparison and logical operators:

  • +
  • -
  • *
  • /
  • ^
  • <
  • >
  • <=
  • >=
  • ==
  • !=
  • && / &
  • || / |

Unary

Jitterbit Studio supports 4 unary operators:

  • !
  • -
  • --
  • ++

Objects

The supported object operators are list literals and member key/index access for lists and dictionaries:

  • {}
  • []

All the operators are implemented for simple types, arrays and dictionaries, and all the interactions between them in case of assignments/other binary operators.

At the point of this closure only unofficial support for #10 is missing. #7 and #13 are yet to be implemented with similar operator handling.