Update lib

This commit is contained in:
Aoran Zeng
2025-07-13 18:29:58 +08:00
parent 9042fb5134
commit 662898f628
2 changed files with 16 additions and 22 deletions

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env raku #!/usr/bin/env raku
# --------------------------------------------------------------- # ---------------------------------------------------------------
# File Name : CGenerator.rakumod # File Name : Generator.rakumod
# File Authors : Aoran Zeng <ccmywish@qq.com> # File Authors : Aoran Zeng <ccmywish@qq.com>
# Contributors : Nul None <nul@none.org> # Contributors : Nul None <nul@none.org>
# Created On : <2025-07-12> # Created On : <2025-07-12>
@@ -9,11 +9,11 @@
# Generates C code from raw string # Generates C code from raw string
# --------------------------------------------------------------- # ---------------------------------------------------------------
unit module CGenerator; unit module Generator;
use ConfigParser; use Parser;
class CStringConverter { my class CStringConverter {
method convert-char($char, $mode) { method convert-char($char, $mode) {
given $mode { given $mode {
@@ -51,7 +51,7 @@ class CStringConverter {
} }
class CVariableNameGenerator { my class CVariableNameGenerator {
method generate($global-config, $section-config, $title) { method generate($global-config, $section-config, $title) {
@@ -95,7 +95,7 @@ class CVariableNameGenerator {
#| .h / .c @variables #| .h / .c @variables
class CVariableGenerator { my class CVariableGenerator {
has @.variables; has @.variables;
has $.c-header-filename; has $.c-header-filename;

View File

@@ -9,14 +9,12 @@
# rawstr4c.md parsing # rawstr4c.md parsing
# --------------------------------------------------------------- # ---------------------------------------------------------------
unit module Rawstr4C; unit module Parser;
# 不能用 Bool只能用 Boolean #| Bool Boolean
my enum ConfigValueType <String Mode Boolean>; my enum ConfigValueType <String Mode Boolean>;
# #|
# @brief 配置项的值
#
my class ConfigValue { my class ConfigValue {
has ConfigValueType $.type; has ConfigValueType $.type;
has $.raw-value; has $.raw-value;
@@ -74,9 +72,8 @@ my class ConfigValue {
} }
#
# @brief 承载 config items 的容 #| config items
#
my class Config { my class Config {
has %.items; has %.items;
@@ -100,9 +97,7 @@ my class Config {
} }
} }
=begin comment #|( :
:
1. Global dom 1. Global dom
2. Section dom 2. Section dom
@@ -111,15 +106,14 @@ my class Config {
Parser : Parser :
- $global-config - $global-config
- @sections - @sections ( $section)
section : $section Hash:
- title - title
- level - level
- raw-string - raw-string
- config (Config ) - config
)
=end comment
class Parser { class Parser {
has $.global-config; has $.global-config;
has @.sections; has @.sections;