Skip to content

[Refactor] 重构项目 #16

@engsr6982

Description

@engsr6982

目前由于一些问题,手动封装脚本类和绑定库方案都较为废人,且在 es 更新后需要手动diff进行修改。

考虑编写一套生成工具,处理90%的绑定、封装生成,人工完成最后10%的复杂代码

graph TD
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
    classDef group fill:#ffffff,stroke:#000000,stroke-width:1px,stroke-dasharray: 5 5
    
    A[endstone header]:::process -->|fix include| B[BlueIceCompiler.exe front]:::process
    subgraph toolchain
        class privateToolchain group
        B --> C[BlueIceCompiler.exe >> AST.json ]:::process
        C --> D[BlueIceCompiler.exe backend]:::process
    end
    
    %% 生成工具链
    D --> E[decl-class.d.ts]:::process
    D --> F[decl-class-wrapper]:::process
    D --> G[decl-enum-builder]:::process
    D --> H[impl-class-wrapper]:::process
    D --> I[impl-enum-builder]:::process
    D --> J[impl-class-builder]:::process
    D --> P[impl-converter]:::process

    %% 文件生成
    F --> K[class.h]
    G --> K
    P --> K
    H --> L[source.cc]
    I --> L[source.cc]
    J --> L[source.cc]

    %% 编译
    L --> M[MSVC/Clang]
    K --> M
    M --> N[js_engine.dll]

    %% 文档生成
    E --> O[Build Document]
Loading

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions