Repository navigation
Expand file tree
/
Copy pathScriptReloadOptions.cs
More file actions
41 lines (36 loc) · 1.63 KB
/
Copy pathScriptReloadOptions.cs
File metadata and controls
41 lines (36 loc) · 1.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
using System;
namespace Inno.Scripting.Reload;
/// <summary>
/// Configures automatic compilation requests and retired-generation verification.
/// </summary>
public sealed class ScriptReloadOptions
{
/// <summary>
/// Gets whether startup and subsequent source changes request automatic compilation.
/// </summary>
/// <remarks>
/// The initial request starts immediately. Later change requests are consumed only at a focused
/// Editor safe point after the configured debounce duration.
/// </remarks>
public bool autoCompile { get; init; } = true;
/// <summary>
/// Gets the quiet period applied to source changes before a compilation starts, in milliseconds.
/// </summary>
public int debounceMilliseconds { get; init; } = 250;
/// <summary>
/// Gets the elapsed duration after which an active compilation is reported as long-running.
/// </summary>
/// <remarks>
/// Use <see cref="System.Threading.Timeout.InfiniteTimeSpan"/> to disable the warning. The warning
/// never cancels compilation automatically.
/// </remarks>
public TimeSpan compilationWarningTimeout { get; init; } = TimeSpan.FromSeconds(10);
/// <summary>
/// Gets the minimum interval between full garbage-collection attempts for retired assembly generations.
/// </summary>
public TimeSpan unloadCollectionInterval { get; init; } = TimeSpan.FromMilliseconds(250);
/// <summary>
/// Gets the duration after which a retained collectible generation permanently faults this reload host.
/// </summary>
public TimeSpan unloadRetentionTimeout { get; init; } = TimeSpan.FromSeconds(30);
}