yambs.environment package#

Submodules#

yambs.environment.native module#

Module contents#

A module implementing a build environment state manager.

class yambs.environment.BuildEnvironment(config: Config)[source]#

Bases: LoggerMixin

A class implementing a simple build environment.

first_party_sources_headers() Iterator[Path][source]#

Get all first-party sources and headers. This could be useful for formatting or static analysis tooling where third-party sources should be excluded.

set_board_sources(board: Board, regular: Set[Path], apps: Set[Path]) SourceSets[source]#

Finalize source sets for a given board.

class yambs.environment.SourceSets(regular: Set[Path], apps: Set[Path])[source]#

Bases: NamedTuple

A structure for managing different kinds of source paths.

apps: Set[Path]#

Alias for field number 1

implicit_sources() Iterator[Tuple[Path, SourceTranslator]][source]#

Iterate over generated sources.

Get all sources that are directly provided to the linker.

regular: Set[Path]#

Alias for field number 0

sources() Iterator[Tuple[Path, SourceTranslator]][source]#

Iterate over sources and their source translator.