80f0d99561842d5f9154d6b8d98795333e38f437
[platform/framework/web/crosswalk-tizen.git] /
1 "use strict";
2
3 var _tk = require('rocambole-token');
4 var _ws = require('rocambole-whitespace');
5
6
7 exports.format = function ConditionalExpression(node) {
8   // we need to grab the actual punctuators since parenthesis aren't counted
9   // as part of test/consequent/alternate
10   var questionMark = _tk.findNext(node.test.endToken, '?');
11   var colon = _tk.findNext(node.consequent.endToken, ':');
12
13   _ws.limitBefore(questionMark, _ws.expectedAfter('ConditionalExpressionTest'));
14   _ws.limitAfter(questionMark, _ws.expectedBefore('ConditionalExpressionConsequent'));
15   _ws.limitBefore(colon, _ws.expectedAfter('ConditionalExpressionConsequent'));
16   _ws.limitAfter(colon, _ws.expectedBefore('ConditionalExpressionAlternate'));
17 };
18
19
20 exports.getIndentEdges = function(node) {
21   if (_tk.findInBetween(node.test.endToken, node.consequent.startToken, _tk.isBr)) {
22     return {
23       startToken: node.test.endToken.next,
24       endToken: node.endToken.next
25     };
26   }
27   if (_tk.findInBetween(node.consequent.endToken, node.alternate.startToken, _tk.isBr)) {
28     return {
29       startToken: node.consequent.endToken.next,
30       endToken: node.endToken.next
31     };
32   }
33 };