MCPcopy Create free account
hub / github.com/FastLED/FastLED / _parse_platformio_section

Function _parse_platformio_section

ci/compiler/platformio_ini.py:533–575  ·  view source on GitHub ↗

Parse the [platformio] section into a typed dataclass.

(
    config: configparser.ConfigParser,
)

Source from the content-addressed store, hash-verified

531
532
533def _parse_platformio_section(
534 config: configparser.ConfigParser,
535) -> Optional[PlatformIOSection]:
536 """
537 Parse the [platformio] section into a typed dataclass.
538 """
539 if not config.has_section("platformio"):
540 return None
541
542 section = config["platformio"]
543
544 # Parse default_envs and extra_configs as lists
545 default_envs = None
546 if "default_envs" in section:
547 default_envs = _parse_list_value(section["default_envs"])
548
549 extra_configs = None
550 if "extra_configs" in section:
551 extra_configs = _parse_list_value(section["extra_configs"])
552
553 return PlatformIOSection(
554 name=section.get("name"),
555 description=section.get("description"),
556 default_envs=default_envs,
557 extra_configs=extra_configs,
558 core_dir=section.get("core_dir"),
559 globallib_dir=section.get("globallib_dir"),
560 platforms_dir=section.get("platforms_dir"),
561 packages_dir=section.get("packages_dir"),
562 cache_dir=section.get("cache_dir"),
563 build_cache_dir=section.get("build_cache_dir"),
564 workspace_dir=section.get("workspace_dir"),
565 build_dir=section.get("build_dir"),
566 libdeps_dir=section.get("libdeps_dir"),
567 include_dir=section.get("include_dir"),
568 src_dir=section.get("src_dir"),
569 lib_dir=section.get("lib_dir"),
570 data_dir=section.get("data_dir"),
571 test_dir=section.get("test_dir"),
572 boards_dir=section.get("boards_dir"),
573 monitor_dir=section.get("monitor_dir"),
574 shared_dir=section.get("shared_dir"),
575 )
576
577
578def _merge_env_sections(

Callers 1

_parse_configMethod · 0.85

Calls 4

_parse_list_valueFunction · 0.85
PlatformIOSectionClass · 0.85
has_sectionMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected