--- all_csv: "scripts/dist/deps.all.csv" script_path: "script" --- 定義: - 以下 @{{json}} 指的是 @scanimpl_annalysis_step_ver.md 需求 "0.1.3.3 階段三:模組分流實體化 (Module Disaggregation)" 所輸出的五個檔案。 ## 0.4 處理方法描述,方法引用,方法分類 ### 0.4.1 生成引用 - **目標**: 生成腳本, 該腳本能將{{all_csv}}所記錄的"引用相依"寫入至 @{{json}} deps 屬性中 - **輸入**:@{{json}}, {{all_csv}} - **處理邏輯**: 1. 遍歷 {{all_csv}} 取出 "方法名" 所對應的 "引用了什麼相依" 2. 匹配 `1. 的"方法名"` 與 @{{json}} 中 matcher 所對應的 "方法名" 並將 `1. 的引用相依` 寫入 @{{json}} deps 屬性中 3. 引用相依有多個,其格式為陣列 - **輸出腳本**:`{{script_path}}/scanimpl_annalysis_json_deps.js` - **範例**: 若以下為 @{{json}}: ```json { "matcher": "procedure TCB_IMGPSScanX.ImageScrollBox1NewGraphic(", "tags": [ "ImageProcessor", "影像處理" ], "lIndex": "6447", "rIndex": "6455", "description": "載入新圖形事件" } ``` 若以下為 @deps.all.csv: ```csv [ ],方法名,所在檔名,行號,引用了什麼相依,方法描述(請手動填寫),原始程式碼片段 [V],TCB_IMGPSScanX.ImageScrollBox1NewGraphic,CB_IMGPSScanImp.pas.bk,6447,TDibGraphic,,procedure TCB_IMGPSScanX.ImageScrollBox1NewGraphic(const Graphic: TDibGraphic); [V],TCB_IMGPSScanX.ImageScrollBox1NewGraphic,CB_IMGPSScanImp.pas.bk,6453,ConvertToBW,,ConvertToBW(ISB_BW.Graphic); ``` 則 @{{json}} 應寫入: ```json { "matcher": "procedure TCB_IMGPSScanX.ImageScrollBox1NewGraphic(", "tags": [ "ImageProcessor", "影像處理" ], "deps": [ "TDibGraphic", "ConvertToBW" ], "lIndex": "6447", "rIndex": "6455", "description": "載入新圖形事件" } ``` ### 0.4.2 生成描述 - **目標**:針對重要方法生成方法描述 - **輸入**:@{{jsons}}, @CB_IMGPSScanImp.pas.bk - **處理邏輯**: 1. 請就 @{{json}} 中的方法進行描述,該方法的實作於 @CB_IMGPSScanImp.pas.bk,對應的 lIndex, rIndex 區段中 2. 重要方法(行數大於 14 行)做詳盡描述, 簡易方法做簡易描述, 請使用中文作為描述語言 3. 方法描述請寫入 @{{json}} 檔中的 description 欄位 4. description 若為多行請考慮斷行符號 - **目標產出**: @{{json}}