跳转至

ui/core/token/material_scheme/cfmaterial_token_literals.h

Material Design 3 Color Token String Literals. More...

Namespaces

Name
cf
cf::ui
cf::ui::core
cf::ui::core::token
cf::ui::core::token::literals

Detailed Description

Material Design 3 Color Token String Literals.

Author: Charliechen114514 (chengh1922@mails.jlu.edu.cn)

Version: 0.1

Date: 2026-02-25

Copyright: Copyright © 2026

Compile-time string constants for Material Design 3 color tokens. These literals are used throughout the color system to ensure consistency and avoid string duplication.

Source code

#pragma once

#include <cstdint>

namespace cf::ui::core::token::literals {

// =============================================================================
// Primary Color Token Literals
// =============================================================================

inline constexpr const char PRIMARY[] = "md.primary";

inline constexpr const char ON_PRIMARY[] = "md.onPrimary";

inline constexpr const char PRIMARY_CONTAINER[] = "md.primaryContainer";

inline constexpr const char ON_PRIMARY_CONTAINER[] = "md.onPrimaryContainer";

// =============================================================================
// Secondary Color Token Literals
// =============================================================================

inline constexpr const char SECONDARY[] = "md.secondary";

inline constexpr const char ON_SECONDARY[] = "md.onSecondary";

inline constexpr const char SECONDARY_CONTAINER[] = "md.secondaryContainer";

inline constexpr const char ON_SECONDARY_CONTAINER[] = "md.onSecondaryContainer";

// =============================================================================
// Tertiary Color Token Literals
// =============================================================================

inline constexpr const char TERTIARY[] = "md.tertiary";

inline constexpr const char ON_TERTIARY[] = "md.onTertiary";

inline constexpr const char TERTIARY_CONTAINER[] = "md.tertiaryContainer";

inline constexpr const char ON_TERTIARY_CONTAINER[] = "md.onTertiaryContainer";

// =============================================================================
// Error Color Token Literals
// =============================================================================

inline constexpr const char ERROR[] = "md.error";

inline constexpr const char ON_ERROR[] = "md.onError";

inline constexpr const char ERROR_CONTAINER[] = "md.errorContainer";

inline constexpr const char ON_ERROR_CONTAINER[] = "md.onErrorContainer";

// =============================================================================
// Surface Color Token Literals
// =============================================================================

inline constexpr const char BACKGROUND[] = "md.background";

inline constexpr const char ON_BACKGROUND[] = "md.onBackground";

inline constexpr const char SURFACE[] = "md.surface";

inline constexpr const char ON_SURFACE[] = "md.onSurface";

inline constexpr const char SURFACE_VARIANT[] = "md.surfaceVariant";

inline constexpr const char ON_SURFACE_VARIANT[] = "md.onSurfaceVariant";

inline constexpr const char OUTLINE[] = "md.outline";

inline constexpr const char OUTLINE_VARIANT[] = "md.outlineVariant";

// =============================================================================
// Utility Color Token Literals
// =============================================================================

inline constexpr const char SHADOW[] = "md.shadow";

inline constexpr const char SCRIM[] = "md.scrim";

inline constexpr const char INVERSE_SURFACE[] = "md.inverseSurface";

inline constexpr const char INVERSE_ON_SURFACE[] = "md.inverseOnSurface";

inline constexpr const char INVERSE_PRIMARY[] = "md.inversePrimary";

// =============================================================================
// All Tokens Array (for iteration)
// =============================================================================

inline constexpr const char* const ALL_TOKENS[] = {
    // Primary
    PRIMARY, ON_PRIMARY, PRIMARY_CONTAINER, ON_PRIMARY_CONTAINER,
    // Secondary
    SECONDARY, ON_SECONDARY, SECONDARY_CONTAINER, ON_SECONDARY_CONTAINER,
    // Tertiary
    TERTIARY, ON_TERTIARY, TERTIARY_CONTAINER, ON_TERTIARY_CONTAINER,
    // Error
    ERROR, ON_ERROR, ERROR_CONTAINER, ON_ERROR_CONTAINER,
    // Surface
    BACKGROUND, ON_BACKGROUND, SURFACE, ON_SURFACE, SURFACE_VARIANT, ON_SURFACE_VARIANT, OUTLINE,
    OUTLINE_VARIANT,
    // Utility
    SHADOW, SCRIM, INVERSE_SURFACE, INVERSE_ON_SURFACE, INVERSE_PRIMARY};

inline constexpr size_t TOKEN_COUNT = 26;

} // namespace cf::ui::core::token::literals

Updated on 2026-03-09 at 10:14:01 +0000