[][src]Module rustc_ap_rustc_session::config

Contains infrastructure for configuring the compiler, including parsing command-line options.

Modules

nightly_options

Structs

CodegenOptions
DebuggingOptions
ExternEntry
Externs

Use tree-based collections to cheaply get a deterministic Hash implementation. Do not switch BTreeMap or BTreeSet out for an unsorted container type! That would break dependency tracking for command-line arguments.

Options
OutputFilenames
OutputTypes

Use tree-based collections to cheaply get a deterministic Hash implementation. Do not switch BTreeMap out for an unsorted container type! That would break dependency tracking for command-line arguments.

RustcOptGroup
SanitizerSet

Enums

BorrowckMode
CFGuard

The different settings that the -C control-flow-guard flag can have.

CrateType
DebugInfo
EntryFnType
ErrorOutputType

The type of diagnostics output to generate.

ExternLocation
Input
LinkerPluginLto
Lto

This is what the LtoCli values get mapped to after resolving defaults and and taking other command line options into account.

LtoCli

The different settings that the -C lto flag can have.

MirSpanview

The different settings that the -Z dump_mir_spanview flag can have. Statement generates a document highlighting each span of every statement (including terminators). Terminator and Block highlight a single span per BasicBlock: the span of the block's Terminator, or a computed span for the block, representing the entire range, covering the block's terminator and all of its statements.

OptLevel
OptionStability
OutputType
Passes
PpMode
PpSourceMode
PrintRequest
SplitDwarfKind

Some debuginfo requires link-time relocation and some does not. LLVM can partition the debuginfo into sections depending on whether or not it requires link-time relocation. Split DWARF provides a mechanism which allows the linker to skip the sections which don't require link-time relocation - either by putting those sections into DWARF object files, or keeping them in the object file in such a way that the linker will skip them.

Strip

The different settings that the -Z strip flag can have.

SwitchWithOptPath
SymbolManglingVersion
TrimmedDefPaths

Parameter to control path trimming.

Constants

CG_OPTIONS
DB_OPTIONS
DWARF_OBJECT_EXT
RLINK_EXT
RUST_CGU_EXT

Functions

basic_codegen_options
basic_debugging_options
build_codegen_options
build_configuration
build_debugging_options
build_session_options
build_target_config
default_configuration
default_lib_output
get_cmd_lint_options
host_triple
make_crate_type_option
parse_color

Parses the --color flag.

parse_crate_types_from_list
parse_error_format

Parses the --error-format flag.

parse_externs
parse_json

Parse the --json flag.

rustc_optgroups

Returns all rustc command line options, including metadata for each option, such as whether the option is part of the stable long-term interface for rustc.

rustc_short_optgroups

Returns the "short" subset of the rustc command line options, including metadata for each option, such as whether the option is part of the stable long-term interface for rustc.

to_crate_config

Converts the crate cfg! configuration from String to Symbol. rustc_interface::interface::Config accepts this in the compiler configuration, but the symbol interner is not yet set up then, so we must convert it later.

Type Definitions

CodegenSetter
DebuggingSetter