[{"data":1,"prerenderedAt":525},["ShallowReactive",2],{"navigation":3,"-design-comment-association":239,"-design-comment-association-surround":521},[4,159],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"指南","\u002Fguide","00.guide\u002F00.index",[9,11,16,21,53,84,116,142],{"title":5,"path":6,"stem":7,"icon":10},"lucide:book",{"title":12,"path":13,"stem":14,"icon":15},"快速开始","\u002Fguide\u002Fgetting-started","00.guide\u002F01.getting-started","lucide:rocket",{"title":17,"path":18,"stem":19,"icon":20},"基础语法","\u002Fguide\u002Fbasic-syntax","00.guide\u002F02.basic-syntax","lucide:code-2",{"title":22,"path":23,"stem":24,"children":25,"icon":27},"数据类型","\u002Fguide\u002Fdata-types","00.guide\u002F03.data-types\u002F00.index",[26,28,33,38,43,48],{"title":22,"path":23,"stem":24,"icon":27},"lucide:database",{"title":29,"path":30,"stem":31,"icon":32},"基本类型","\u002Fguide\u002Fdata-types\u002Fbasic_types","00.guide\u002F03.data-types\u002F01.basic_types","lucide:type",{"title":34,"path":35,"stem":36,"icon":37},"复合类型","\u002Fguide\u002Fdata-types\u002Fcomposite_types","00.guide\u002F03.data-types\u002F02.composite_types","lucide:layers",{"title":39,"path":40,"stem":41,"icon":42},"类型推导","\u002Fguide\u002Fdata-types\u002Ftype_inference","00.guide\u002F03.data-types\u002F03.type_inference","lucide:brain-circuit",{"title":44,"path":45,"stem":46,"icon":47},"结构体","\u002Fguide\u002Fdata-types\u002Fstruct","00.guide\u002F03.data-types\u002F04.struct","lucide:box-select",{"title":49,"path":50,"stem":51,"icon":52},"内建类型表面","\u002Fguide\u002Fdata-types\u002Fbuilt-in-surface","00.guide\u002F03.data-types\u002F05.built-in-surface","lucide:wrench",{"title":54,"path":55,"stem":56,"children":57,"icon":59},"流程控制","\u002Fguide\u002Fcontrol-flow","00.guide\u002F04.control-flow\u002F00.index",[58,60,64,69,74,79],{"title":54,"path":55,"stem":56,"icon":59},"lucide:git-branch",{"title":61,"path":62,"stem":63,"icon":59},"if 表达式","\u002Fguide\u002Fcontrol-flow\u002Fif-expressions","00.guide\u002F04.control-flow\u002F01.if-expressions",{"title":65,"path":66,"stem":67,"icon":68},"for 循环","\u002Fguide\u002Fcontrol-flow\u002Ffor-loops","00.guide\u002F04.control-flow\u002F02.for-loops","lucide:repeat",{"title":70,"path":71,"stem":72,"icon":73},"break 和 continue","\u002Fguide\u002Fcontrol-flow\u002Fbreak-continue","00.guide\u002F04.control-flow\u002F03.break-continue","lucide:skip-forward",{"title":75,"path":76,"stem":77,"icon":78},"return","\u002Fguide\u002Fcontrol-flow\u002Freturn","00.guide\u002F04.control-flow\u002F04.return","lucide:corner-up-left",{"title":80,"path":81,"stem":82,"icon":83},"注意事项","\u002Fguide\u002Fcontrol-flow\u002Fnotes","00.guide\u002F04.control-flow\u002F05.notes","lucide:alert-triangle",{"title":85,"path":86,"stem":87,"children":88,"icon":90},"函数","\u002Fguide\u002Ffunctions","00.guide\u002F05.functions\u002F00.index",[89,91,96,101,106,111],{"title":85,"path":86,"stem":87,"icon":90},"lucide:braces",{"title":92,"path":93,"stem":94,"icon":95},"基础函数","\u002Fguide\u002Ffunctions\u002Fbasic-functions","00.guide\u002F05.functions\u002F01.basic-functions","lucide:function-square",{"title":97,"path":98,"stem":99,"icon":100},"参数与默认值","\u002Fguide\u002Ffunctions\u002Fadvanced-parameters","00.guide\u002F05.functions\u002F02.advanced-parameters","lucide:settings-2",{"title":102,"path":103,"stem":104,"icon":105},"匿名函数","\u002Fguide\u002Ffunctions\u002Fclosures","00.guide\u002F05.functions\u002F03.closures","lucide:curly-braces",{"title":107,"path":108,"stem":109,"icon":110},"内建函数","\u002Fguide\u002Ffunctions\u002Fbuiltin-functions","00.guide\u002F05.functions\u002F04.builtin-functions","lucide:box",{"title":112,"path":113,"stem":114,"icon":115},"main 函数","\u002Fguide\u002Ffunctions\u002Fmain-function","00.guide\u002F05.functions\u002F05.main-function","lucide:play",{"title":117,"path":118,"stem":119,"children":120,"icon":37},"模块化","\u002Fguide\u002Fmodules","00.guide\u002F06.modules\u002F00.index",[121,122,127,132,137],{"title":117,"path":118,"stem":119,"icon":37},{"title":123,"path":124,"stem":125,"icon":126},"导出","\u002Fguide\u002Fmodules\u002Fexport","00.guide\u002F06.modules\u002F01.export","lucide:upload",{"title":128,"path":129,"stem":130,"icon":131},"导入","\u002Fguide\u002Fmodules\u002Fimport","00.guide\u002F06.modules\u002F02.import","lucide:download",{"title":133,"path":134,"stem":135,"icon":136},"最佳实践","\u002Fguide\u002Fmodules\u002Fbest-practices","00.guide\u002F06.modules\u002F03.best-practices","lucide:check-circle-2",{"title":138,"path":139,"stem":140,"icon":141},"完整示例","\u002Fguide\u002Fmodules\u002Fcomplete-example","00.guide\u002F06.modules\u002F04.complete-example","lucide:file-code-2",{"title":143,"path":144,"stem":145,"children":146,"icon":148},"高级特性概述","\u002Fguide\u002Fadvanced","00.guide\u002F07.advanced\u002F00.index",[147,149,154],{"title":143,"path":144,"stem":145,"icon":148},"lucide:zap",{"title":150,"path":151,"stem":152,"icon":153},"泛型","\u002Fguide\u002Fadvanced\u002Fgenerics","00.guide\u002F07.advanced\u002F05.generics","lucide:git-merge",{"title":155,"path":156,"stem":157,"icon":158},"类型转换","\u002Fguide\u002Fadvanced\u002Ftype-conversion","00.guide\u002F07.advanced\u002F06.type-conversion","lucide:refresh-cw",{"title":160,"path":161,"stem":162,"children":163,"icon":15},"设计","\u002Fdesign","01.design\u002F00.index",[164,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,229,232,235],{"title":160,"path":161,"stem":162,"icon":15},{"title":166,"path":167,"stem":168},"CST 特性","\u002Fdesign\u002Fcst-features","01.design\u002F01.cst-features",{"title":170,"path":171,"stem":172},"注释关联规则","\u002Fdesign\u002Fcomment-association","01.design\u002F02.comment-association",{"title":174,"path":175,"stem":176},"错误处理","\u002Fdesign\u002Ferror-handling","01.design\u002F03.error-handling",{"title":178,"path":179,"stem":180},"代码优化","\u002Fdesign\u002Foptimization","01.design\u002F04.optimization",{"title":182,"path":183,"stem":184},"注释保留","\u002Fdesign\u002Fcomments","01.design\u002F05.comments",{"title":186,"path":187,"stem":188},"结构体设计","\u002Fdesign\u002Fstruct-design","01.design\u002F06.struct-design",{"title":190,"path":191,"stem":192},"comparable 约束设计","\u002Fdesign\u002Fcomparable-constraint","01.design\u002F07.comparable-constraint",{"title":194,"path":195,"stem":196},"文档分层约定","\u002Fdesign\u002Fdocumentation-convention","01.design\u002F08.documentation-convention",{"title":198,"path":199,"stem":200},"类型系统总纲","\u002Fdesign\u002Ftype-system","01.design\u002F09.type-system",{"title":202,"path":203,"stem":204},"泛型系统","\u002Fdesign\u002Fgenerics-system","01.design\u002F10.generics-system",{"title":206,"path":207,"stem":208},"值语义与共享语义","\u002Fdesign\u002Fvalue-and-sharing-semantics","01.design\u002F11.value-and-sharing-semantics",{"title":210,"path":211,"stem":212},"函数与调用","\u002Fdesign\u002Ffunctions-and-calls","01.design\u002F12.functions-and-calls",{"title":214,"path":215,"stem":216},"表达式与语句","\u002Fdesign\u002Fexpressions-and-statements","01.design\u002F13.expressions-and-statements",{"title":218,"path":219,"stem":220},"模块系统","\u002Fdesign\u002Fmodule-system","01.design\u002F14.module-system",{"title":222,"path":223,"stem":224},"渲染内建","\u002Fdesign\u002Frender-intrinsics","01.design\u002F15.render-intrinsics",{"title":226,"path":227,"stem":228},"Any 设计","\u002Fdesign\u002Fany-design","01.design\u002F16.any-design",{"title":49,"path":230,"stem":231},"\u002Fdesign\u002Fbuilt-in-types-surface","01.design\u002F17.built-in-types-surface",{"title":107,"path":233,"stem":234},"\u002Fdesign\u002Fbuilt-in-functions","01.design\u002F18.built-in-functions",{"title":236,"path":237,"stem":238},"内建结构体与运行时类型","\u002Fdesign\u002Fbuilt-in-structs-and-runtime-types","01.design\u002F19.built-in-structs-and-runtime-types",{"id":240,"title":170,"body":241,"description":271,"extension":516,"meta":517,"navigation":518,"path":171,"seo":519,"stem":172,"__hash__":520},"content\u002F01.design\u002F02.comment-association.md",{"type":242,"value":243,"toc":504},"minimark",[244,248,252,262,265,312,326,333,336,356,365,372,375,384,393,396,429,433,439,465,471,500],[245,246,247],"p",{},"解析器在构建 CST 时，会自动收集注释并关联到对应的语法节点。",[249,250,251],"h2",{"id":251},"关联规则",[253,254,256,257,261],"h3",{"id":255},"文档注释","文档注释（",[258,259,260],"code",{},"\u002F\u002F\u002F","）",[245,263,264],{},"关联到紧随其后的函数、变量等定义。",[266,267,272],"pre",{"className":268,"code":269,"language":270,"meta":271,"style":271},"language-dj shiki shiki-themes github-light github-dark github-dark","\u002F\u002F\u002F 问候函数\n\u002F\u002F\u002F @param name - 用户名\n\u002F\u002F\u002F @returns - 问候语\nfunc greet(name: string) -> string {\n    `hello ${name}`\n}\n","dj","",[258,273,274,282,288,294,300,306],{"__ignoreMap":271},[275,276,279],"span",{"class":277,"line":278},"line",1,[275,280,281],{},"\u002F\u002F\u002F 问候函数\n",[275,283,285],{"class":277,"line":284},2,[275,286,287],{},"\u002F\u002F\u002F @param name - 用户名\n",[275,289,291],{"class":277,"line":290},3,[275,292,293],{},"\u002F\u002F\u002F @returns - 问候语\n",[275,295,297],{"class":277,"line":296},4,[275,298,299],{},"func greet(name: string) -> string {\n",[275,301,303],{"class":277,"line":302},5,[275,304,305],{},"    `hello ${name}`\n",[275,307,309],{"class":277,"line":308},6,[275,310,311],{},"}\n",[245,313,314,315,317,318,321,322,325],{},"在 CST 中，",[258,316,260],{}," 开头的注释会存储在 ",[258,319,320],{},"FuncDef"," 节点的 ",[258,323,324],{},"comments"," 字段中。",[253,327,329,330,261],{"id":328},"模块注释","模块注释（",[258,331,332],{},"\u002F\u002F!",[245,334,335],{},"关联到 Program 节点，表示整个模块的文档。",[266,337,339],{"className":268,"code":338,"language":270,"meta":271,"style":271},"\u002F\u002F! 用户模块\n\u002F\u002F! \n\u002F\u002F! 提供用户相关的功能，包括认证、用户信息管理等\n",[258,340,341,346,351],{"__ignoreMap":271},[275,342,343],{"class":277,"line":278},[275,344,345],{},"\u002F\u002F! 用户模块\n",[275,347,348],{"class":277,"line":284},[275,349,350],{},"\u002F\u002F! \n",[275,352,353],{"class":277,"line":290},[275,354,355],{},"\u002F\u002F! 提供用户相关的功能，包括认证、用户信息管理等\n",[245,357,314,358,317,360,321,363,325],{},[258,359,332],{},[258,361,362],{},"Program",[258,364,324],{},[253,366,368,369,261],{"id":367},"单行注释","单行注释（",[258,370,371],{},"\u002F\u002F",[245,373,374],{},"关联到最近的语法节点。",[266,376,378],{"className":268,"code":377,"language":270,"meta":271,"style":271},"let x = 1; \u002F\u002F 初始化变量\n",[258,379,380],{"__ignoreMap":271},[275,381,382],{"class":277,"line":278},[275,383,377],{},[245,385,314,386,388,389,392],{},[258,387,371],{}," 开头的注释会关联到 ",[258,390,391],{},"LetStmt"," 节点。",[249,394,395],{"id":395},"注释收集过程",[397,398,400,408,414,420],"steps",{"level":399},"4",[401,402,403,407],"h4",{},[404,405,406],"strong",{},"词法分析","：识别并保留所有注释 Token",[401,409,410,413],{},[404,411,412],{},"语法分析","：在构建 CST 时收集注释",[401,415,416,419],{},[404,417,418],{},"关联","：根据注释类型和位置关联到对应的节点",[401,421,422,425,426,428],{},[404,423,424],{},"存储","：将注释存储在节点的 ",[258,427,324],{}," 字段中",[249,430,432],{"id":431},"cst-中的注释字段","CST 中的注释字段",[245,434,435,436,438],{},"每个 CST 节点都有一个 ",[258,437,324],{}," 字段：",[266,440,444],{"className":441,"code":442,"language":443,"meta":271,"style":271},"language-rust shiki shiki-themes github-light github-dark github-dark","pub struct Node {\n    pub comments: Vec\u003CComment>,\n    \u002F\u002F ... 其他字段\n}\n","rust",[258,445,446,451,456,461],{"__ignoreMap":271},[275,447,448],{"class":277,"line":278},[275,449,450],{},"pub struct Node {\n",[275,452,453],{"class":277,"line":284},[275,454,455],{},"    pub comments: Vec\u003CComment>,\n",[275,457,458],{"class":277,"line":290},[275,459,460],{},"    \u002F\u002F ... 其他字段\n",[275,462,463],{"class":277,"line":296},[275,464,311],{},[245,466,467,470],{},[258,468,469],{},"Comment"," 类型定义：",[266,472,474],{"className":441,"code":473,"language":443,"meta":271,"style":271},"pub enum Comment {\n    Line(String),\n    Doc(String),\n    Module(String),\n}\n",[258,475,476,481,486,491,496],{"__ignoreMap":271},[275,477,478],{"class":277,"line":278},[275,479,480],{},"pub enum Comment {\n",[275,482,483],{"class":277,"line":284},[275,484,485],{},"    Line(String),\n",[275,487,488],{"class":277,"line":290},[275,489,490],{},"    Doc(String),\n",[275,492,493],{"class":277,"line":296},[275,494,495],{},"    Module(String),\n",[275,497,498],{"class":277,"line":302},[275,499,311],{},[501,502,503],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":271,"searchDepth":284,"depth":284,"links":505},[506,514,515],{"id":251,"depth":284,"text":251,"children":507},[508,510,512],{"id":255,"depth":290,"text":509},"文档注释（\u002F\u002F\u002F）",{"id":328,"depth":290,"text":511},"模块注释（\u002F\u002F!）",{"id":367,"depth":290,"text":513},"单行注释（\u002F\u002F）",{"id":395,"depth":284,"text":395},{"id":431,"depth":284,"text":432},"md",{},{},{"title":170,"description":271},"bGIxIqLFpHbQrrzbVseVvPe--H6aRHimDPcJfcf5vgk",[522,523],{"title":166,"path":167,"stem":168,"description":271,"children":-1},{"title":174,"path":175,"stem":176,"description":524,"children":-1},"当前状态：实现层补充记录。语言级“编译错误 vs 运行时 panic”规则，现阶段应优先参考 表达式与语句。\n本文主要保留为编译器报错实现和错误呈现方式的补充说明。",1776981319056]