1e1854f91e33c2e69abb69fb42fb358b99c9a86e
[platform/framework/web/crosswalk-tizen.git] /
1 "use strict";
2
3 var _tk = require('rocambole-token');
4 var _ws = require('rocambole-whitespace');
5 var _br = require('rocambole-linebreak');
6
7
8 exports.format = function AssignmentExpression(node) {
9   // can't use node.right.startToken since it might be surrounded by
10   // a parenthesis (see #5)
11   var operator = _tk.findNext(node.left.endToken, node.operator);
12   _br.limit(operator, 'AssignmentOperator');
13   _ws.limit(operator, 'AssignmentOperator');
14 };
15
16
17 exports.getIndentEdges = function(node, opts) {
18   var operator = _tk.findNext(node.left.endToken, node.operator);
19   if (_tk.findInBetween(operator, node.right.startToken, _tk.isBr) ||
20     (opts['AssignmentExpression.' + node.right.type] &&
21     _tk.findInBetween(operator, node.right.endToken, _tk.isBr))) {
22     // we only indent if assignment is on next line
23     return {
24       startToken: operator,
25       endToken: node.endToken.next || node.endToken
26     };
27   }
28 };