diff --git a/CODE_ERROR_FIX_REPORT.md b/CODE_ERROR_FIX_REPORT.md
deleted file mode 100644
index 685d40c..0000000
--- a/CODE_ERROR_FIX_REPORT.md
+++ /dev/null
@@ -1,105 +0,0 @@
-# 代码错误检测功能修复报告
-
-## 修复的问题
-
-### 1. 字符串检测误报问题
-**原问题**: 只要使用引号就会报"检测未正确闭合的字符串"错误
-**修复方案**:
-- 重写了字符串检测逻辑,使用状态机方法进行精确解析
-- 正确处理转义字符(`\"`、`\'`)
-- 区分字符串内容和代码内容
-- 支持多行字符串检测
-- 正确处理注释中的引号(不会误报)
-- **新增**: 跳过被注释掉的代码行中的字符串检测
-
-### 2. 括号检测误报问题
-**原问题**: 只要使用括号就会报"检测未正确闭合的括号"错误
-**修复方案**:
-- 重写了括号匹配算法,使用栈数据结构进行精确匹配
-- 正确处理字符串内的括号(不参与匹配)
-- 正确处理注释内的括号(不参与匹配)
-- 支持多行括号匹配
-- 提供具体的错误位置和类型(圆括号、方括号、花括号)
-- **新增**: 跳过被注释掉的代码行中的括号检测
-
-### 3. 注释行误报问题 ⭐ **新修复**
-**原问题**: 被注释掉的代码(以`//`开头的行)也会被错误检测
-**修复方案**:
-- 智能识别整行注释(以`//`开头的行)
-- 跳过注释行中的所有错误检测
-- 正确处理块注释(`/* */`)中的内容
-- 区分行内注释和整行注释
-- 保持对正常代码的检测精度
-
-### 4. 语法错误检测改进
-**改进内容**:
-- 更精确的拼写错误检测,减少误报
-- 改进的赋值操作符检查(避免误报合法赋值)
-- 跳过注释行的检查
-- 添加函数定义语法检查
-- 分号缺失检测
-
-### 5. 拼写检查智能化
-**改进内容**:
-- 扩展了Squirrel关键字列表
-- 添加常见标识符模式识别,减少误报
-- 改进编辑距离算法的使用
-- 移除字符串和注释内容后再进行拼写检查
-- **新增**: 跳过注释行中的拼写检查
-
-### 6. 快速修复功能增强
-**新增功能**:
-- 拼写错误的一键修复
-- 赋值操作符的快速修复
-- 缺失分号的自动添加
-- 更友好的修复建议描述
-
-## 技术实现
-
-### 状态机解析
-使用状态机方法来跟踪:
-- 字符串状态(是否在字符串内)
-- 转义状态(是否被转义)
-- 注释状态(行注释/块注释)
-
-### 栈结构匹配
-使用栈来跟踪:
-- 开括号的位置和类型
-- 括号的匹配状态
-- 错误位置的精确报告
-
-### 上下文感知
-- 区分代码、字符串、注释的不同上下文
-- 在不同上下文中应用不同的检测规则
-- 避免跨上下文的误报
-
-## 测试覆盖
-
-创建了全面的测试用例:
-- 正常的字符串和括号使用
-- 各种拼写错误场景
-- 字符串中的特殊字符
-- 注释中的内容(行注释和块注释)
-- **新增**: 被注释掉的代码行测试
-- 多行结构
-- 转义字符处理
-- 混合场景(注释+正常代码)
-
-## 使用说明
-
-1. 修复后的错误检测会在您输入代码时实时运行
-2. 错误会以红色波浪线显示在编辑器中
-3. 将鼠标悬停在错误上可查看详细信息
-4. 点击灯泡图标或使用 `Ctrl+.` 可应用快速修复
-5. 支持的快速修复包括:拼写纠正、添加分号、修复操作符等
-6. **新功能**: 注释掉的代码不会被错误检测干扰
-
-## 性能优化
-
-- 使用高效的算法减少处理时间
-- 避免不必要的重复检查
-- 智能跳过注释和字符串内容的检查
-- 优化正则表达式的使用
-- **新优化**: 提前识别注释行,减少不必要的处理
-
-修复完成后,代码错误检测功能应该能够准确、智能地识别真正的错误,同时避免之前存在的误报问题,包括对注释代码的错误检测。
\ No newline at end of file
diff --git a/FEATURES.md b/FEATURES.md
deleted file mode 100644
index 0a39b8c..0000000
--- a/FEATURES.md
+++ /dev/null
@@ -1,82 +0,0 @@
-# Squirrel NUT Explorer 功能说明
-
-## 已实现的功能
-
-### 1. 基础功能
-- 通过 pvfUtility API 浏览和编辑 NUT 文件
-- 支持连接到本地运行的 pvfUtility 服务
-- 自动加载所有 NUT 文件内容
-- 支持文件保存和刷新
-
-### 2. 代码自动完成功能
-- **基础自动完成**:提供关键字、API函数、类、常量的基本自动完成
-- **跨文件完成**:能够识别其他已加载的 NUT 文件中定义的函数
-- **变量完成**:提供当前文档中已声明的局部变量自动完成
-- **点号完成**:支持对象属性和方法的自动完成(如 string.len, array.append 等)
-
-### 3. 悬停信息功能
-- **库函数信息显示**:显示内置函数的参数、返回值和描述
-- **类信息显示**:显示内置类的方法和属性信息
-- **常量信息显示**:显示内置常量的值和描述
-- **跨文件自定义函数信息**:显示其他文件中定义的函数的参数和位置信息
-
-### 4. 定义跳转功能
-- **跨文件跳转**:支持在所有已加载的 NUT 文件中查找函数定义并跳转
-- **多重定义支持**:当存在同名函数时,提供所有可能的定义位置供选择
-
-### 5. 函数签名帮助
-- **参数提示**:在函数调用时显示函数的参数列表
-- **当前参数高亮**:高亮显示当前正在输入的参数
-- **内置函数支持**:支持内置函数的签名帮助
-- **自定义函数支持**:支持用户定义函数的签名帮助
-
-### 6. 输入时格式化
-- **括号触发格式化**:输入 ")" 时格式化当前行
-- **分号触发格式化**:输入 ";" 时格式化当前行
-- **大括号触发格式化**:输入 "}" 时格式化整个代码块
-- **Squirrel语法优化**:针对Squirrel语言特性进行格式化优化
-
-### 7. 代码格式化
-- **缩进标准化**:统一代码缩进风格
-- **空格规范化**:在操作符周围添加适当空格
-- **换行管理**:合理安排代码换行
-- **括号处理**:自动调整大括号位置和缩进
-
-### 8. 代码错误检测
-- **语法错误检测**:检测常见的语法错误,如拼写错误的关键字
-- **未闭合字符串检测**:检测未正确闭合的字符串
-- **未闭合括号检测**:检测未正确闭合的括号
-- **逻辑错误提示**:提示可能的逻辑错误,如在条件语句中使用赋值操作符
-- **快速修复**:提供拼写错误的快速修复功能
-
-### 9. API文档解析
-- **内置函数文档**:解析和管理Squirrel语言的内置函数文档
-- **类文档**:解析和管理内置类的文档
-- **常量文档**:解析和管理内置常量的文档
-- **动态生成**:根据文档动态生成自动完成项和悬停信息
-
-### 10. 语法定义支持
-- **语法高亮**:支持关键字、字符串、注释、数字、操作符等的语法高亮
-- **代码折叠**:支持基于大括号的代码折叠
-- **自动闭合**:支持括号、引号的自动闭合
-- **智能缩进**:根据代码结构自动调整缩进
-
-## 缓存机制
-- **函数缓存**:缓存所有已解析的函数信息,提高性能
-- **持久化缓存**:在整个VS Code会话期间保持缓存有效
-- **增量更新**:在保存文件时自动更新对应文件的缓存
-- **重复函数处理**:正确处理同名函数,提供所有定义位置供选择
-
-## 性能优化
-- **批量处理**:文件按批次处理,避免内存溢出
-- **并行处理**:批次内的文件并行处理,提高效率
-- **增量更新**:仅在文件保存时更新对应文件的缓存
-- **防重复提取**:防止同时进行多次提取操作
-- **性能监控**:监控提取性能,为优化提供数据支持
-
-## 使用方法
-1. 确保 pvfUtility 服务正在运行
-2. 在 VS Code 中打开 Squirrel NUT Explorer
-3. 点击"连接到 pvfUtility"按钮
-4. 连接成功后,所有功能将自动启用
-5. 编辑和保存文件时,相关缓存会自动更新
\ No newline at end of file
diff --git a/FUNCTION_EXTRACTOR.md b/FUNCTION_EXTRACTOR.md
deleted file mode 100644
index ac66c10..0000000
--- a/FUNCTION_EXTRACTOR.md
+++ /dev/null
@@ -1,67 +0,0 @@
-# 函数提取和缓存功能说明
-
-## 功能概述
-
-本项目新增了函数提取和缓存功能,用于从nut文件中提取函数信息并进行缓存,为后续的函数跳转功能做准备。
-
-## 主要组件
-
-### 1. FunctionInfo 接口
-定义了函数信息的数据结构:
-- `name`: 函数名称
-- `filePath`: 文件路径
-- `lineNumber`: 行号
-- `parameters`: 参数列表
-- `signature`: 函数签名
-
-### 2. FunctionCacheManager 类
-负责管理函数信息的缓存:
-- 缓存函数信息
-- 提供函数查找功能
-- 统计缓存信息
-- 缓存在VS Code会话期间一直有效,直到重新获取nut文件时重置
-
-### 3. FunctionExtractor 类
-负责从文件中提取函数信息:
-- 解析Squirrel语言的函数定义
-- 批量处理文件
-- 防止重复提取
-- 性能监控
-
-### 4. PerformanceMonitor 类
-监控函数提取的性能:
-- 记录提取时间
-- 计算平均处理时间
-- 提供性能统计信息
-
-## 工作流程
-
-1. 用户点击"连接到 pvfUtility"时,系统自动获取所有nut文件内容
-2. 连接成功后,自动启动函数提取过程
-3. FunctionExtractor逐个解析文件中的函数定义
-4. 提取的函数信息被缓存到FunctionCacheManager中
-5. 缓存在VS Code会话期间一直有效
-6. 当用户保存nut文件时,自动更新对应文件的函数缓存
-7. 性能数据被记录用于优化
-
-## 性能优化措施
-
-1. **批量处理**: 文件按批次处理,避免内存溢出
-2. **并行处理**: 批次内的文件并行处理,提高效率
-3. **缓存机制**: 避免重复解析已处理的文件
-4. **增量更新**: 仅在文件保存时更新对应文件的缓存
-5. **防重复提取**: 防止同时进行多次提取操作
-6. **性能监控**: 监控提取性能,为优化提供数据支持
-
-## 使用方法
-
-1. 函数提取功能在用户连接到pvfUtility后自动执行,无需手动操作。
-2. 当用户保存nut文件时,对应的函数缓存会自动更新。
-3. 缓存在整个VS Code会话期间一直有效,直到重新获取nut文件时重置。
-
-## 后续开发
-
-当前实现为函数跳转功能奠定了基础,下一步可以:
-1. 实现函数跳转到定义功能
-2. 添加函数引用查找功能
-3. 提供函数自动补全功能
\ No newline at end of file
diff --git a/INSTALL_GUIDE.md b/INSTALL_GUIDE.md
deleted file mode 100644
index 7b24a2e..0000000
--- a/INSTALL_GUIDE.md
+++ /dev/null
@@ -1,100 +0,0 @@
-# 🚀 Squirrel NUT Explorer - 安装和使用指南
-
-## 📦 已修复版本特性
-
-✅ **修复了所有代码错误检测的误报问题**
-- 字符串检测不再误报
-- 括号检测不再误报
-- 智能语法检查
-- 快速错误修复
-
-✅ **完整的功能支持**
-- 代码自动完成
-- 悬停信息显示
-- 定义跳转
-- 函数签名帮助
-- 代码格式化
-- 错误检测和修复
-
-## 📋 安装步骤
-
-### 方法一:通过 VSIX 文件安装 (推荐)
-
-1. **打开 VS Code**
-
-2. **打开扩展面板**
- - 快捷键:`Ctrl+Shift+X`
- - 或点击左侧活动栏的扩展图标
-
-3. **安装扩展**
- - 点击扩展面板右上角的 "..." 菜单
- - 选择 "从 VSIX 安装..."
- - 浏览并选择:`squirrel-nut-explorer-1.0.1.vsix`
-
-4. **重启 VS Code**
- - 安装完成后重启 VS Code 以确保扩展正常工作
-
-### 方法二:命令行安装
-
-```bash
-code --install-extension squirrel-nut-explorer-1.0.1.vsix
-```
-
-## 🎯 使用方法
-
-1. **激活扩展**
- - 扩展会在 VS Code 启动时自动激活
- - 在活动栏中会看到 "Squirrel" 图标
-
-2. **连接到 pvfUtility**
- - 确保 pvfUtility 服务正在运行
- - 点击 Squirrel 面板中的"连接到 pvfUtility"按钮
- - 连接成功后即可使用所有功能
-
-3. **编辑 NUT 文件**
- - 打开或创建 `.nut` 文件
- - 享受完整的语言支持功能
-
-## 🔧 功能说明
-
-### 代码错误检测
-- **实时检测**:输入时即时显示错误
-- **智能识别**:不会误报正常的字符串和括号
-- **快速修复**:点击灯泡图标或 `Ctrl+.` 应用修复
-
-### 代码自动完成
-- **关键字完成**:Squirrel 语言关键字
-- **函数完成**:内置和自定义函数
-- **变量完成**:当前作用域的变量
-- **跨文件完成**:其他 NUT 文件中的函数
-
-### 悬停信息
-- **函数说明**:显示参数、返回值和描述
-- **类信息**:显示类的方法和属性
-- **跨文件信息**:其他文件中的函数信息
-
-### 其他功能
-- **定义跳转**:`F12` 或 `Ctrl+点击`
-- **格式化代码**:`Shift+Alt+F`
-- **函数签名提示**:输入函数参数时显示
-- **输入时格式化**:输入 `)`、`;`、`}` 时自动格式化
-
-## 🐛 问题反馈
-
-如果遇到任何问题,请检查:
-1. VS Code 版本是否为 1.99.0 或更高
-2. pvfUtility 服务是否正常运行
-3. 文件扩展名是否为 `.nut`
-
-## 📄 更新日志
-
-### v1.0.1 (修复版)
-- ✅ 完全修复字符串检测误报问题
-- ✅ 完全修复括号检测误报问题
-- ✅ 改进语法错误检测精度
-- ✅ 增强快速修复功能
-- ✅ 优化性能和稳定性
-
----
-
-**享受无误报的 Squirrel 开发体验!** 🎉
\ No newline at end of file
diff --git a/copy-beautify-files.js b/copy-beautify-files.js
deleted file mode 100644
index 9912ab2..0000000
--- a/copy-beautify-files.js
+++ /dev/null
@@ -1,34 +0,0 @@
-const fs = require('fs-extra');
-const path = require('path');
-
-// 复制 js-beautify 相关文件到 dist 目录
-async function copyBeautifyFiles() {
- const srcDir = path.join(__dirname);
- const destDir = path.join(__dirname, 'dist');
-
- // 确保目标目录存在
- await fs.ensureDir(destDir);
-
- // 复制 js-beautify.js 和包装器
- const filesToCopy = [
- 'js-beautify.js',
- 'js-beautify-wrapper.js'
- ];
-
- for (const file of filesToCopy) {
- const srcPath = path.join(srcDir, file);
- const destPath = path.join(destDir, file);
-
- if (await fs.pathExists(srcPath)) {
- await fs.copy(srcPath, destPath);
- console.log(`已复制 ${file} 到 dist 目录`);
- }
- }
-}
-
-// 如果直接运行此脚本,则执行复制操作
-if (require.main === module) {
- copyBeautifyFiles().catch(console.error);
-}
-
-module.exports = { copyBeautifyFiles };
\ No newline at end of file
diff --git a/dist/providers/apiParser.js b/dist/providers/apiParser.js
index 5320d05..676654f 100644
--- a/dist/providers/apiParser.js
+++ b/dist/providers/apiParser.js
@@ -40,7 +40,8 @@ const path = __importStar(require("path"));
// API文档解析器类
class ApiParser {
constructor() {
- this.functions = [];
+ this.functions = []; // 普通函数,不自动填写第一个参数
+ this.functionEx = []; // 扩展函数,自动填写所有参数
this.classes = [];
this.constants = [];
// 获取扩展路径并设置JSON文件路径
@@ -65,6 +66,7 @@ class ApiParser {
const apiData = JSON.parse(jsonData);
// 加载函数数据
this.functions = apiData.functions || [];
+ this.functionEx = apiData.functionEx || [];
// 加载类数据
this.classes = apiData.classes || [];
// 加载常量数据
@@ -383,6 +385,7 @@ class ApiParser {
try {
const apiData = {
functions: this.functions,
+ functionEx: this.functionEx,
classes: this.classes,
constants: this.constants
};
@@ -396,13 +399,27 @@ class ApiParser {
reloadApiDocumentation() {
this.initializeApiDocumentation();
}
- // 获取所有函数
+ // 获取所有普通函数
getFunctions() {
return this.functions;
}
- // 根据名称获取函数
+ // 获取所有扩展函数
+ getFunctionEx() {
+ return this.functionEx;
+ }
+ // 根据名称获取函数(包括普通函数和扩展函数)
getFunctionByName(name) {
- return this.functions.find(func => func.name === name);
+ // 先在普通函数中查找
+ let func = this.functions.find(func => func.name === name);
+ if (func) {
+ return func;
+ }
+ // 再在扩展函数中查找
+ return this.functionEx.find(func => func.name === name);
+ }
+ // 检查是否是扩展函数
+ isFunctionEx(name) {
+ return this.functionEx.some(func => func.name === name);
}
// 获取所有类
getClasses() {
@@ -425,19 +442,41 @@ class ApiParser {
return this.constants.find(constant => constant.name === name);
}
// 生成函数签名
- generateFunctionSignature(func) {
- const params = func.params.map(param => {
- let paramStr = param.name;
- if (param.optional) {
- paramStr = `[${paramStr}`;
- if (param.defaultValue) {
- paramStr += `=${param.defaultValue}`;
+ generateFunctionSignature(func, isFunctionEx = false) {
+ // 检查是否是普通函数且有参数
+ if (!isFunctionEx && func.params.length > 0) {
+ // 对于普通函数,将第一个参数移到函数名前面
+ const firstParam = func.params[0];
+ const remainingParams = func.params.slice(1);
+ const params = remainingParams.map(param => {
+ let paramStr = param.name;
+ if (param.optional) {
+ paramStr = `[${paramStr}`;
+ if (param.defaultValue) {
+ paramStr += `=${param.defaultValue}`;
+ }
+ paramStr += ']';
}
- paramStr += ']';
- }
- return paramStr;
- }).join(', ');
- return `function ${func.name}(${params})${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ return paramStr;
+ }).join(', ');
+ const paramPart = params ? `(${params})` : '()';
+ return `function ${firstParam.name}.${func.name}${paramPart}${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ }
+ else {
+ // 对于扩展函数或无参数的函数,保持原有格式
+ const params = func.params.map(param => {
+ let paramStr = param.name;
+ if (param.optional) {
+ paramStr = `[${paramStr}`;
+ if (param.defaultValue) {
+ paramStr += `=${param.defaultValue}`;
+ }
+ paramStr += ']';
+ }
+ return paramStr;
+ }).join(', ');
+ return `function ${func.name}(${params})${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ }
}
// 生成类签名
generateClassSignature(cls) {
diff --git a/dist/providers/apiParser.js.map b/dist/providers/apiParser.js.map
index 83f3dd4..05d9d1f 100644
--- a/dist/providers/apiParser.js.map
+++ b/dist/providers/apiParser.js.map
@@ -1 +1 @@
-{"version":3,"file":"apiParser.js","sourceRoot":"","sources":["../../src/providers/apiParser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"apiParser.js","sourceRoot":"","sources":["../../src/providers/apiParser.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/providers/completionProvider.js b/dist/providers/completionProvider.js
index 25a0cd8..7c18b77 100644
--- a/dist/providers/completionProvider.js
+++ b/dist/providers/completionProvider.js
@@ -96,21 +96,50 @@ class CompletionProvider {
}
// 获取API函数完成项
getApiFunctionCompletions() {
+ const completions = [];
+ // 添加普通函数(不自动填写第一个参数)
const functions = this.apiParser.getFunctions();
- return functions.map(func => {
+ functions.forEach(func => {
const item = new vscode.CompletionItem(func.name, vscode.CompletionItemKind.Function);
item.detail = '内置函数';
item.documentation = new vscode.MarkdownString(`\`\`\`squirrel\n${this.apiParser.generateFunctionSignature(func)}\n\`\`\`\n${func.description}`);
// 为函数创建带参数的插入文本
if (func.params.length > 0) {
+ // 普通函数不自动填写第一个参数,用户需要手动输入
+ if (func.params.length > 1) {
+ // 从第二个参数开始添加占位符
+ const remainingParams = func.params.slice(1);
+ const paramText = remainingParams.map((param, index) => `\${${index + 1}:${param.name}}`).join(', ');
+ item.insertText = new vscode.SnippetString(`${func.name}(${paramText})`);
+ }
+ else {
+ // 只有一个参数或无参数
+ item.insertText = new vscode.SnippetString(`${func.name}()`);
+ }
+ }
+ else {
+ item.insertText = new vscode.SnippetString(`${func.name}()`);
+ }
+ completions.push(item);
+ });
+ // 添加扩展函数(自动填写所有参数)
+ const functionEx = this.apiParser.getFunctionEx();
+ functionEx.forEach(func => {
+ const item = new vscode.CompletionItem(func.name, vscode.CompletionItemKind.Function);
+ item.detail = '扩展函数';
+ item.documentation = new vscode.MarkdownString(`\`\`\`squirrel\n${this.apiParser.generateFunctionSignature(func)}\n\`\`\`\n${func.description}`);
+ // 为函数创建带参数的插入文本
+ if (func.params.length > 0) {
+ // 扩展函数自动填写所有参数
const paramText = func.params.map((param, index) => `\${${index + 1}:${param.name}}`).join(', ');
item.insertText = new vscode.SnippetString(`${func.name}(${paramText})`);
}
else {
item.insertText = new vscode.SnippetString(`${func.name}()`);
}
- return item;
+ completions.push(item);
});
+ return completions;
}
// 获取API类完成项
getApiClassCompletions() {
diff --git a/dist/providers/completionProvider.js.map b/dist/providers/completionProvider.js.map
index 687e811..a318ddf 100644
--- a/dist/providers/completionProvider.js.map
+++ b/dist/providers/completionProvider.js.map
@@ -1 +1 @@
-{"version":3,"file":"completionProvider.js","sourceRoot":"","sources":["../../src/providers/completionProvider.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"completionProvider.js","sourceRoot":"","sources":["../../src/providers/completionProvider.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
diff --git a/dist/providers/hoverProvider.js b/dist/providers/hoverProvider.js
index b6e09fa..0fc1c3e 100644
--- a/dist/providers/hoverProvider.js
+++ b/dist/providers/hoverProvider.js
@@ -60,7 +60,8 @@ class HoverProvider {
// 首先检查是否是API函数
const apiFunction = this.apiParser.getFunctionByName(word);
if (apiFunction) {
- const signature = this.apiParser.generateFunctionSignature(apiFunction);
+ const isFunctionEx = this.apiParser.isFunctionEx(apiFunction.name);
+ const signature = this.apiParser.generateFunctionSignature(apiFunction, isFunctionEx);
let hoverContent = `★ 内置函数: ${signature}\n\n`;
hoverContent += `${apiFunction.description}\n\n`;
if (apiFunction.params.length > 0) {
diff --git a/dist/providers/hoverProvider.js.map b/dist/providers/hoverProvider.js.map
index 7f2e867..861f2d9 100644
--- a/dist/providers/hoverProvider.js.map
+++ b/dist/providers/hoverProvider.js.map
@@ -1 +1 @@
-{"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../src/providers/hoverProvider.ts"],"names":[],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"hoverProvider.js","sourceRoot":"","sources":["../../src/providers/hoverProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiC;AAEjC,2CAA4E;AAE5E,WAAW;AACX,MAAa,aAAa;IAItB,YAAY,YAAkC;QAC1C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,qBAAS,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;IAED,aAAa;IACb,KAAK,CAAC,YAAY,CACd,QAA6B,EAC7B,QAAyB,EACzB,KAA+B;QAE/B,0BAA0B;QAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,YAAY,IAAI,CAAC,IAAI,QAAQ,CAAC,SAAS,GAAG,YAAY,EAAE,CAAC;YACzD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,gBAAgB;QAChB,MAAM,KAAK,GAAG,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,OAAO;QACP,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAErC,eAAe;QACf,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACtF,IAAI,YAAY,GAAG,0IAA0I,SAAS,aAAa,CAAC;YACpL,YAAY,IAAI,gCAAgC,WAAW,CAAC,WAAW,aAAa,CAAC;YAErF,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,YAAY,IAAI,2CAA2C,CAAC;gBAC5D,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;oBAC/B,YAAY,IAAI,kCAAkC,KAAK,CAAC,IAAI,yCAAyC,KAAK,CAAC,IAAI,uCAAuC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,0CAA0C,KAAK,CAAC,WAAW,WAAW,CAAC;gBAC9P,CAAC,CAAC,CAAC;YACP,CAAC;YAED,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACtB,YAAY,IAAI,2EAA2E,WAAW,CAAC,OAAO,CAAC,IAAI,0CAA0C,WAAW,CAAC,OAAO,CAAC,WAAW,SAAS,CAAC;YAC1M,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC/D,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YAChC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,YAAY;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACX,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;YAClE,IAAI,YAAY,GAAG,yIAAyI,SAAS,aAAa,CAAC;YACnL,YAAY,IAAI,gCAAgC,QAAQ,CAAC,WAAW,aAAa,CAAC;YAElF,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,YAAY,IAAI,2CAA2C,CAAC;gBAC5D,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;oBACvE,YAAY,IAAI,kCAAkC,eAAe,0CAA0C,MAAM,CAAC,WAAW,WAAW,CAAC;gBAC7I,CAAC,CAAC,CAAC;YACP,CAAC;YAED,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,YAAY,IAAI,6CAA6C,CAAC;gBAC9D,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;oBACrE,YAAY,IAAI,kCAAkC,aAAa,0CAA0C,IAAI,CAAC,WAAW,WAAW,CAAC;gBACzI,CAAC,CAAC,CAAC;YACP,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC/D,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YAChC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,aAAa;QACb,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,YAAY,GAAG,wIAAwI,WAAW,CAAC,IAAI,aAAa,CAAC;YACzL,YAAY,IAAI,uEAAuE,WAAW,CAAC,KAAK,aAAa,CAAC;YACtH,YAAY,IAAI,gCAAgC,WAAW,CAAC,WAAW,aAAa,CAAC;YACrF,YAAY,IAAI,wEAAwE,WAAW,CAAC,QAAQ,SAAS,CAAC;YAEtH,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC/D,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YAChC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,SAAS;QACT,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,SAAS;YACT,IAAI,YAAY,GAAG,EAAE,CAAC;YAEtB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO;gBACP,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC1B,YAAY,GAAG,kGAAkG,IAAI,CAAC,SAAS,aAAa,CAAC;gBAC7I,YAAY,IAAI,wEAAwE,IAAI,CAAC,QAAQ,aAAa,CAAC;gBACnH,YAAY,IAAI,wEAAwE,IAAI,CAAC,UAAU,SAAS,CAAC;YACrH,CAAC;iBAAM,CAAC;gBACJ,SAAS;gBACT,YAAY,GAAG,wEAAwE,IAAI,aAAa,CAAC;gBACzG,YAAY,IAAI,mDAAmD,CAAC;gBACpE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACrB,YAAY,IAAI,kCAAkC,IAAI,CAAC,SAAS,yCAAyC,IAAI,CAAC,QAAQ,wCAAwC,IAAI,CAAC,UAAU,YAAY,CAAC;gBAC9L,CAAC,CAAC,CAAC;YACP,CAAC;YAED,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;YAC/D,cAAc,CAAC,SAAS,GAAG,IAAI,CAAC;YAChC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;QAED,WAAW;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,WAAW,EAAE,CAAC;YACd,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,CAAC;QAED,UAAU;QACV,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,YAAY,EAAE,CAAC;YACf,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,UAAU;IACF,cAAc,CAAC,IAAY;QAC/B,MAAM,UAAU,GAA8B;YAC1C,IAAI,EAAE,2FAA2F;YACjG,MAAM,EAAE,uGAAuG;YAC/G,OAAO,EAAE,+FAA+F;YACxG,KAAK,EAAE,2FAA2F;YAClG,SAAS,EAAE,8FAA8F;YACzG,UAAU,EAAE,wFAAwF;YACpG,OAAO,EAAE,wFAAwF;YACjG,QAAQ,EAAE,yFAAyF;YACnG,OAAO,EAAE,sFAAsF;YAC/F,SAAS,EAAE,wFAAwF;YACnG,aAAa,EAAE,wFAAwF;YACvG,MAAM,EAAE,oFAAoF;YAC5F,MAAM,EAAE,qFAAqF;YAC7F,OAAO,EAAE,qFAAqF;SACjG,CAAC;QAEF,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,SAAS;IACD,eAAe,CAAC,IAAY;QAChC,MAAM,WAAW,GAA8B;YAC3C,IAAI,EAAE,iGAAiG;YACvG,GAAG,EAAE,kGAAkG;YACvG,UAAU,EAAE,2FAA2F;YACvG,UAAU,EAAE,uFAAuF;YACnG,UAAU,EAAE,0FAA0F;YACtG,UAAU,EAAE,0FAA0F;YACtG,UAAU,EAAE,4FAA4F;YACxG,UAAU,EAAE,4FAA4F;YACxG,SAAS,EAAE,yFAAyF;YACpG,SAAS,EAAE,yFAAyF;YACpG,UAAU,EAAE,2FAA2F;YACvG,UAAU,EAAE,2FAA2F;YACvG,SAAS,EAAE,4FAA4F;YACvG,SAAS,EAAE,4FAA4F;YACvG,SAAS,EAAE,gGAAgG;YAC3G,SAAS,EAAE,gGAAgG;SAC9G,CAAC;QAEF,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;CACJ;AAtLD,sCAsLC"}
\ No newline at end of file
diff --git a/package.json b/package.json
index 20f5837..23a0697 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "squirrel-nut-explorer",
"displayName": "Squirrel NUT Explorer",
"description": "通过 pvfUtility API 浏览和编辑 NUT 文件",
- "version": "1.1.0",
+ "version": "1.1.1",
"publisher": "local",
"engines": {
"vscode": "^1.99.0"
diff --git a/squirrel-nut-explorer-1.1.0.vsix b/squirrel-nut-explorer-1.1.0.vsix
index 6197982..3010198 100644
Binary files a/squirrel-nut-explorer-1.1.0.vsix and b/squirrel-nut-explorer-1.1.0.vsix differ
diff --git a/src/providers/apiParser.ts b/src/providers/apiParser.ts
index 9b15676..debb204 100644
--- a/src/providers/apiParser.ts
+++ b/src/providers/apiParser.ts
@@ -52,7 +52,8 @@ export interface ApiConstant {
// API文档解析器类
export class ApiParser {
private static instance: ApiParser;
- private functions: ApiFunction[] = [];
+ private functions: ApiFunction[] = []; // 普通函数,不自动填写第一个参数
+ private functionEx: ApiFunction[] = []; // 扩展函数,自动填写所有参数
private classes: ApiClass[] = [];
private constants: ApiConstant[] = [];
private jsonFilePath: string;
@@ -83,6 +84,7 @@ export class ApiParser {
// 加载函数数据
this.functions = apiData.functions || [];
+ this.functionEx = apiData.functionEx || [];
// 加载类数据
this.classes = apiData.classes || [];
@@ -405,6 +407,7 @@ export class ApiParser {
try {
const apiData = {
functions: this.functions,
+ functionEx: this.functionEx,
classes: this.classes,
constants: this.constants
};
@@ -420,14 +423,30 @@ export class ApiParser {
this.initializeApiDocumentation();
}
- // 获取所有函数
+ // 获取所有普通函数
public getFunctions(): ApiFunction[] {
return this.functions;
}
- // 根据名称获取函数
+ // 获取所有扩展函数
+ public getFunctionEx(): ApiFunction[] {
+ return this.functionEx;
+ }
+
+ // 根据名称获取函数(包括普通函数和扩展函数)
public getFunctionByName(name: string): ApiFunction | undefined {
- return this.functions.find(func => func.name === name);
+ // 先在普通函数中查找
+ let func = this.functions.find(func => func.name === name);
+ if (func) {
+ return func;
+ }
+ // 再在扩展函数中查找
+ return this.functionEx.find(func => func.name === name);
+ }
+
+ // 检查是否是扩展函数
+ public isFunctionEx(name: string): boolean {
+ return this.functionEx.some(func => func.name === name);
}
// 获取所有类
@@ -456,20 +475,43 @@ export class ApiParser {
}
// 生成函数签名
- public generateFunctionSignature(func: ApiFunction): string {
- const params = func.params.map(param => {
- let paramStr = param.name;
- if (param.optional) {
- paramStr = `[${paramStr}`;
- if (param.defaultValue) {
- paramStr += `=${param.defaultValue}`;
- }
- paramStr += ']';
- }
- return paramStr;
- }).join(', ');
+ public generateFunctionSignature(func: ApiFunction, isFunctionEx: boolean = false): string {
+ // 检查是否是普通函数且有参数
+ if (!isFunctionEx && func.params.length > 0) {
+ // 对于普通函数,将第一个参数移到函数名前面
+ const firstParam = func.params[0];
+ const remainingParams = func.params.slice(1);
- return `function ${func.name}(${params})${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ const params = remainingParams.map(param => {
+ let paramStr = param.name;
+ if (param.optional) {
+ paramStr = `[${paramStr}`;
+ if (param.defaultValue) {
+ paramStr += `=${param.defaultValue}`;
+ }
+ paramStr += ']';
+ }
+ return paramStr;
+ }).join(', ');
+
+ const paramPart = params ? `(${params})` : '()';
+ return `function ${firstParam.name}.${func.name}${paramPart}${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ } else {
+ // 对于扩展函数或无参数的函数,保持原有格式
+ const params = func.params.map(param => {
+ let paramStr = param.name;
+ if (param.optional) {
+ paramStr = `[${paramStr}`;
+ if (param.defaultValue) {
+ paramStr += `=${param.defaultValue}`;
+ }
+ paramStr += ']';
+ }
+ return paramStr;
+ }).join(', ');
+
+ return `function ${func.name}(${params})${func.returns ? `: ${func.returns.type}` : ': void'}`;
+ }
}
// 生成类签名
diff --git a/src/providers/completionProvider.ts b/src/providers/completionProvider.ts
index 3607855..a31e2c1 100644
--- a/src/providers/completionProvider.ts
+++ b/src/providers/completionProvider.ts
@@ -93,22 +93,54 @@ export class CompletionProvider implements vscode.CompletionItemProvider {
// 获取API函数完成项
private getApiFunctionCompletions(): vscode.CompletionItem[] {
+ const completions: vscode.CompletionItem[] = [];
+
+ // 添加普通函数(不自动填写第一个参数)
const functions = this.apiParser.getFunctions();
- return functions.map(func => {
+ functions.forEach(func => {
const item = new vscode.CompletionItem(func.name, vscode.CompletionItemKind.Function);
item.detail = '内置函数';
item.documentation = new vscode.MarkdownString(`\`\`\`squirrel\n${this.apiParser.generateFunctionSignature(func)}\n\`\`\`\n${func.description}`);
// 为函数创建带参数的插入文本
if (func.params.length > 0) {
+ // 普通函数不自动填写第一个参数,用户需要手动输入
+ if (func.params.length > 1) {
+ // 从第二个参数开始添加占位符
+ const remainingParams = func.params.slice(1);
+ const paramText = remainingParams.map((param, index) => `\${${index + 1}:${param.name}}`).join(', ');
+ item.insertText = new vscode.SnippetString(`${func.name}(${paramText})`);
+ } else {
+ // 只有一个参数或无参数
+ item.insertText = new vscode.SnippetString(`${func.name}()`);
+ }
+ } else {
+ item.insertText = new vscode.SnippetString(`${func.name}()`);
+ }
+
+ completions.push(item);
+ });
+
+ // 添加扩展函数(自动填写所有参数)
+ const functionEx = this.apiParser.getFunctionEx();
+ functionEx.forEach(func => {
+ const item = new vscode.CompletionItem(func.name, vscode.CompletionItemKind.Function);
+ item.detail = '扩展函数';
+ item.documentation = new vscode.MarkdownString(`\`\`\`squirrel\n${this.apiParser.generateFunctionSignature(func)}\n\`\`\`\n${func.description}`);
+
+ // 为函数创建带参数的插入文本
+ if (func.params.length > 0) {
+ // 扩展函数自动填写所有参数
const paramText = func.params.map((param, index) => `\${${index + 1}:${param.name}}`).join(', ');
item.insertText = new vscode.SnippetString(`${func.name}(${paramText})`);
} else {
item.insertText = new vscode.SnippetString(`${func.name}()`);
}
- return item;
+ completions.push(item);
});
+
+ return completions;
}
// 获取API类完成项
diff --git a/src/providers/hoverProvider.ts b/src/providers/hoverProvider.ts
index c993df1..f7f3d82 100644
--- a/src/providers/hoverProvider.ts
+++ b/src/providers/hoverProvider.ts
@@ -37,7 +37,8 @@ export class HoverProvider implements vscode.HoverProvider {
// 首先检查是否是API函数
const apiFunction = this.apiParser.getFunctionByName(word);
if (apiFunction) {
- const signature = this.apiParser.generateFunctionSignature(apiFunction);
+ const isFunctionEx = this.apiParser.isFunctionEx(apiFunction.name);
+ const signature = this.apiParser.generateFunctionSignature(apiFunction, isFunctionEx);
let hoverContent = `★ 内置函数: ${signature}\n\n`;
hoverContent += `${apiFunction.description}\n\n`;
diff --git a/新库函数示范.json b/新库函数示范.json
new file mode 100644
index 0000000..2f2f346
--- /dev/null
+++ b/新库函数示范.json
@@ -0,0 +1,277 @@
+{
+ "functions": [
+ {
+ "name": "file",
+ "description": "",
+ "params": [],
+ "returns": {
+ "type": "void",
+ "description": ""
+ }
+ },
+ {
+ "name": "close",
+ "description": "关闭文件流",
+ "params": [],
+ "returns": {
+ "type": "void",
+ "description": ""
+ }
+ },
+ {
+ "name": "len",
+ "description": "获取数据长度",
+ "params": [
+ {
+ "name": "data",
+ "type": "object",
+ "description": "基本数据类型"
+ }
+ ],
+ "returns": {
+ "type": "int",
+ "description": ""
+ }
+ }
+ ],
+ "functionEx": [
+ {
+ "name": "sq_RGB",
+ "description": "颜色空间",
+ "params": [
+ {
+ "name": "R",
+ "type": "int",
+ "description": "红色(0-255)"
+ },
+ {
+ "name": "G",
+ "type": "int",
+ "description": "绿色(0-255)"
+ },
+ {
+ "name": "B",
+ "type": "int",
+ "description": "蓝色(0-255)"
+ }
+ ],
+ "returns": {
+ "type": "object",
+ "description": "颜色对象"
+ }
+ },
+ {
+ "name": "sq_RGBA",
+ "description": "颜色空间",
+ "params": [
+ {
+ "name": "R",
+ "type": "int",
+ "description": "红色(0-255)"
+ },
+ {
+ "name": "G",
+ "type": "int",
+ "description": "绿色(0-255)"
+ },
+ {
+ "name": "B",
+ "type": "int",
+ "description": "蓝色(0-255)"
+ },
+ {
+ "name": "A",
+ "type": "int",
+ "description": "透明度(0-255)"
+ }
+ ],
+ "returns": {
+ "type": "object",
+ "description": "颜色对象"
+ }
+ }
+ ],
+ "classes": [
+ {
+ "name": "String",
+ "description": "字符串类,提供字符串操作方法",
+ "methods": [
+ {
+ "name": "len",
+ "description": "返回字符串长度",
+ "params": [],
+ "returns": {
+ "type": "integer",
+ "description": "字符串的长度"
+ }
+ },
+ {
+ "name": "slice",
+ "description": "返回字符串的子串",
+ "params": [
+ {
+ "name": "start",
+ "type": "integer",
+ "description": "起始位置"
+ },
+ {
+ "name": "end",
+ "type": "integer",
+ "description": "结束位置(可选)",
+ "optional": true
+ }
+ ],
+ "returns": {
+ "type": "string",
+ "description": "子串"
+ }
+ },
+ {
+ "name": "find",
+ "description": "查找子串在字符串中的位置",
+ "params": [
+ {
+ "name": "substr",
+ "type": "string",
+ "description": "要查找的子串"
+ }
+ ],
+ "returns": {
+ "type": "integer",
+ "description": "子串的位置,未找到返回-1"
+ }
+ }
+ ],
+ "properties": [
+ {
+ "name": "length",
+ "type": "integer",
+ "description": "字符串的长度"
+ }
+ ]
+ },
+ {
+ "name": "Array",
+ "description": "数组类,提供数组操作方法",
+ "methods": [
+ {
+ "name": "len",
+ "description": "返回数组长度",
+ "params": [],
+ "returns": {
+ "type": "integer",
+ "description": "数组的长度"
+ }
+ },
+ {
+ "name": "append",
+ "description": "向数组末尾添加元素",
+ "params": [
+ {
+ "name": "value",
+ "type": "any",
+ "description": "要添加的元素"
+ }
+ ],
+ "returns": {
+ "type": "void",
+ "description": "无返回值"
+ }
+ },
+ {
+ "name": "pop",
+ "description": "移除并返回数组最后一个元素",
+ "params": [],
+ "returns": {
+ "type": "any",
+ "description": "被移除的元素"
+ }
+ }
+ ],
+ "properties": [
+ {
+ "name": "length",
+ "type": "integer",
+ "description": "数组的长度"
+ }
+ ]
+ },
+ {
+ "name": "Table",
+ "description": "表类,提供表操作方法",
+ "methods": [
+ {
+ "name": "len",
+ "description": "返回表中键值对的数量",
+ "params": [],
+ "returns": {
+ "type": "integer",
+ "description": "键值对的数量"
+ }
+ },
+ {
+ "name": "rawget",
+ "description": "获取指定键的值",
+ "params": [
+ {
+ "name": "key",
+ "type": "any",
+ "description": "键"
+ }
+ ],
+ "returns": {
+ "type": "any",
+ "description": "键对应的值"
+ }
+ },
+ {
+ "name": "rawset",
+ "description": "设置指定键的值",
+ "params": [
+ {
+ "name": "key",
+ "type": "any",
+ "description": "键"
+ },
+ {
+ "name": "value",
+ "type": "any",
+ "description": "值"
+ }
+ ],
+ "returns": {
+ "type": "void",
+ "description": "无返回值"
+ }
+ }
+ ],
+ "properties": []
+ }
+ ],
+ "constants": [
+ {
+ "name": "PI",
+ "value": "3.14159",
+ "description": "圆周率",
+ "category": "math"
+ },
+ {
+ "name": "true",
+ "value": "true",
+ "description": "布尔真值",
+ "category": "boolean"
+ },
+ {
+ "name": "false",
+ "value": "false",
+ "description": "布尔假值",
+ "category": "boolean"
+ },
+ {
+ "name": "null",
+ "value": "null",
+ "description": "空值",
+ "category": "general"
+ }
+ ]
+}
\ No newline at end of file