Shared types used throughout fpm-watch.
This module defines the configuration records used to pass options and
fpm settings into the engine.
Root target metadata used for change → target mapping.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=int64), | public | :: | mask | = | 0_int64 | ||
| character(len=:), | public, | allocatable | :: | name |
Fully assembled watcher configuration.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=:), | public, | allocatable | :: | cmd_prefix |
Cached remainder after the subcommand token (for injection). |
||
| character(len=:), | public, | allocatable | :: | cmd_rest | |||
| character(len=:), | public, | allocatable | :: | fpm_cmdline |
Selected |
||
| class(fpm_build_settings), | public, | allocatable | :: | settings |
Cached prefix up to and including the subcommand token (for injection). |
||
| character(len=:), | public, | allocatable | :: | subcmd |
Typed |
||
| type(watch_opts_t), | public | :: | w |
Full command line string to execute (e.g., |
Watcher configuration options.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real, | public | :: | debounce | = | 0.2 |
Optional periodic rescan interval (seconds). |
|
| logical, | public | :: | debug | = | .false. |
Poll interval (seconds) between change scans. |
|
| type(string_t), | public, | allocatable | :: | enabled_features(:) |
Run once (init + optional run-on-start) and exit (CI-friendly). |
||
| type(string_t), | public, | allocatable | :: | ignore(:) |
Glob patterns to include; if empty, includes all. |
||
| type(string_t), | public, | allocatable | :: | include(:) |
Names of optional feature plugins to enable. |
||
| logical, | public | :: | low_cpu | = | .false. |
Glob patterns to ignore. |
|
| logical, | public | :: | once | = | .false. | ||
| real, | public | :: | poll | = | 0.5 |
Debounce interval (seconds) used after the first detected change. |
|
| logical, | public | :: | print_files_once | = | .false. |
Suppress |
|
| real, | public | :: | rescan | = | 0.0 |
Run the command once immediately on startup. |
|
| logical, | public | :: | run_on_start | = | .true. |
Print the watched file list once at startup (requires high verbosity). |
|
| logical, | public | :: | silent_fpm | = | .false. |
Also watch dependency project sources (can include paths under build dir). |
|
| integer, | public | :: | verbosity | = | 0 |
Enable extra debug output and internal timing/status messages. |
|
| logical, | public | :: | watch_deps | = | .false. |
Use OS sleep for waiting to minimize idle CPU usage. |