Home | History | Annotate | Line # | Download | only in indent
psym_if_expr_stmt_else.c revision 1.4
      1 /* $NetBSD: psym_if_expr_stmt_else.c,v 1.4 2022/04/24 09:04:12 rillig Exp $ */
      2 
      3 /*
      4  * Tests for the parser symbol psym_if_expr_stmt_else, which represents the
      5  * parser state after reading the keyword 'if', the controlling expression,
      6  * the statement of the 'then' branch and the keyword 'else'.
      7  *
      8  * If the next token is an 'if', the formatting depends on the option '-ei' or
      9  * '-nei'.  Any other lookahead token completes the 'if' statement.
     10  */
     11 
     12 //indent input
     13 void
     14 example(_Bool cond)
     15 {
     16 	if (cond) {}
     17 	else if (cond) {}
     18 	else if (cond) i++;
     19 	else {}
     20 }
     21 //indent end
     22 
     23 //indent run
     24 void
     25 example(_Bool cond)
     26 {
     27 	if (cond) {
     28 	} else if (cond) {
     29 	} else if (cond)
     30 		i++;
     31 	else {
     32 	}
     33 }
     34 //indent end
     35 
     36 /*
     37  * Combining the options '-bl' (place brace on the left margin) and '-ce'
     38  * (cuddle else) looks strange, but is technically correct.
     39  */
     40 //indent run -bl
     41 void
     42 example(_Bool cond)
     43 {
     44 	if (cond)
     45 	{
     46 	} else if (cond)
     47 	{
     48 	} else if (cond)
     49 		i++;
     50 	else
     51 	{
     52 	}
     53 }
     54 //indent end
     55 
     56 //indent run -bl -nce
     57 void
     58 example(_Bool cond)
     59 {
     60 	if (cond)
     61 	{
     62 	}
     63 	else if (cond)
     64 	{
     65 	}
     66 	else if (cond)
     67 		i++;
     68 	else
     69 	{
     70 	}
     71 }
     72 //indent end
     73 
     74 /*
     75  * Adding the option '-nei' (do not join 'else if') expands the code even
     76  * more.
     77  */
     78 //indent run -bl -nce -nei
     79 void
     80 example(_Bool cond)
     81 {
     82 	if (cond)
     83 	{
     84 	}
     85 	else
     86 		if (cond)
     87 		{
     88 		}
     89 		else
     90 			if (cond)
     91 				i++;
     92 			else
     93 			{
     94 			}
     95 }
     96 //indent end
     97