---
id: "T:cAlgo.API.CompilationOperation"
kind: "class"
namespace: "cAlgo.API"
url: "https://help.ctrader.com/ctrader-algo/references/Compilation/CompilationOperation/"
---

> Documentation index for agents: https://help.ctrader.com/ctrader-algo/llms.txt · machine index: https://help.ctrader.com/ctrader-algo/api.json

# CompilationOperation (class)

Provides access to the properties describing an asynchronous algo compilation operation.

Environments: Desktop supported · CLI supported · Cloud supported.

## Definition

```csharp
public class CompilationOperation
```

Available since cAlgo.API 5.1.

## Examples

C#:

```csharp
var operation = Compiler.CompileAsync(@"Sample cBot\Sample cBot.csproj", result => Print("Compilation succeeded: {0}", result.Succeeded));
if (operation.IsExecuting)
    Print("Compilation is running");
```

Python:

```python
operation = api.Compiler.CompileAsync(r"Sample cBot\Sample cBot.csproj", lambda result: api.Print(f"Compilation succeeded: {result.Succeeded}"))
if operation.IsExecuting:
    api.Print("Compilation is running")
```

## Properties

- `public bool IsExecuting {get;}` — True if compilation operation is being executed, false if it completed. [details](https://help.ctrader.com/ctrader-algo/references/Compilation/CompilationOperation/IsExecuting/index.md)
- `public CompilationResult Result {get;}` — The result of compilation operation. [details](https://help.ctrader.com/ctrader-algo/references/Compilation/CompilationOperation/Result/index.md)

