Branch to the right code depending if we have a type, an expression or an identifier.
See Implementation
Branch to the right code depending if we have a type, an expression or an identifier.