IFs

A instrução IF pode ser utilizada para executar algo apenas se uma condição for verdadeira, ou caso contrário. A instrução if é executada em tempo de execução. Logo, deve ser colocada dentro de algum bloco de código de definição de task ou de procedure ou estar no final do script. Dado que se estiver fora do escopo das definições de tasks e procedures, só é executado após todas as tarefas serem executadas.

A condição do if pode envolver valores string (entre aspas), variáveis ou propriedades e operador de comparação "==" para igualdade e "!=" para diferença. Veja o exemplo abaixo

task test before
    if test.dir == "" then
        echo Propriedade test.dir não definida.
    else if test.dir == "test" then
        echo Propriedade test.dir aponta para pasta test/
        if src.dir == "src"
            echo A propriedade src.dir aponta para src/
        endif
    else
        echo A propriedade test.dir tem o valor: $(test.dir)
    endif
endtask

O exemplo acima testa os valores das propriedades: "test.dir" e "src.dir" e imprime uma ou duas mensagens, dependendo do valor delas.

Veja outro exemplo:

proc printDirContent
    if os == "windows" then
        @dir
    else 
        @ls
    endif
endtask

A procedure acima executa o comando dir, se estiver no windows e ls, se estiver em outro so como, por exemplo, o linux.

Proxima aula

A próxima aula ensina tempo de execução e tempo de interpretação.