2017-05-08 75 views
0

我正在使用clang格式來優化一些現有的代碼。我想插入兩者之間的換行,如果條件下,如下面的代碼:如何在兩個條件之間插入換行符條件

int main()                  
{                    
    int x;                   
    int y;                  

    if (x == 1)                 
    {                    
    }                    
    if(y == 2)                  
    {                    
    }                    
    return 0;                  
} 

應改爲

int main()                  
{                    
    int x;                   
    int y;                  

    if (x == 1)                 
    {                    
    } 
    /* inserted a newline */                   
    if(y == 2)                  
    {                    
    }                    
    return 0;                  
} 

可以這樣使用鐺格式做些什麼呢?

回答

1

不,你不能。

鐺格式只是格式代碼,它不能修改代碼。你的情況正在修改源代碼的AST。使用RecursiveASTVisitor查找想要插入的位置 ,然後重新寫回代碼。

或者你可以寫一個正則表達式腳本,插入你想要的。 :)