code: function convertPropertyBinding(localResolver, implicitReceiver, expressionWithoutBuiltins, bindingId) {
      if (!localResolver) {
          localResolver = new DefaultLocalResolver();
      }
      var /** @type {?} */ currValExpr = createCurrValueExpr(bindingId);
      var /** @type {?} */ stmts = [];
      var /** @type {?} */ visitor = new _AstToIrVisitor(localResolver, implicitReceiver, bindingId);
      var /** @type {?} */ outputExpr = expressionWithoutBuiltins.visit(visitor, _Mode.Expression);
      if (visitor.temporaryCount) {
          for (var /** @type {?} */ i = 0; i < visitor.temporaryCount; i++) {
              stmts.push(temporaryDeclaration(bindingId, i));
          }
      }
      stmts.push(currValExpr.set(outputExpr).toDeclStmt(null, [StmtModifier.Final]));
      return new ConvertPropertyBindingResult(stmts, currValExpr);
  }
docs: Converts the given expression AST into an executable output AST, assuming the expression
  is used in property binding. The expression has to be preprocessed via
  `convertPropertyBindingBuiltins`.
  @param {?} localResolver
  @param {?} implicitReceiver
  @param {?} expressionWithoutBuiltins
  @param {?} bindingId
  @return {?}