Public API
This page lists exported symbols of CTSolvers.Core.
From CTSolvers.Core
CTSolvers.Core
CTSolvers.Core — Module
Core utilities and common types for CTSolvers.
This module provides:
- Common abstract types used across the package
- Display formatting utilities for consistent output
- Shared constants and helper functions
AbstractTag
CTSolvers.Core.AbstractTag — Type
abstract type AbstractTagAbstract type for tag dispatch pattern used to handle extension-dependent implementations.
This type is used for multiple dispatch in validation functions and other contexts where behavior depends on loaded extensions (e.g., Enzyme, Zygote, CUDA).
Example
struct MyTag <: AbstractTag end
function validate_backend(tag::MyTag, backend::Symbol)
# Tag-specific validation logic
endSee also: Extension-based validation patterns in Modelers module
get_format_codes
CTSolvers.Core.get_format_codes — Function
get_format_codes(io::IO) -> NamedTupleGet ANSI formatting codes based on terminal color support.
Returns a NamedTuple with formatting codes for consistent display across all show() methods.
Fields
bold: Bold textreset: Reset all formattingname: Bold blue for names (options, types, etc.)type: Cyan for typesvalue: Green for valueskeyword: Yellow for keywords/aliasescount: Magenta for countslabel: Gray for labels/descriptions
Example
fmt = get_format_codes(io)
print(io, fmt.name, "option_name", fmt.reset, "::", fmt.type, "Int", fmt.reset)Notes
- Automatically detects color support via
get(io, :color, false) - Returns empty strings for all codes if colors are not supported
- Ensures consistent color scheme across the entire package