refactor(hashtable): 简化哈希表初始化接口并优化文件打开模式
- 将哈希表初始化从两步设置改为一步完成,直接传递哈希函数和比较函数 - 重构scc_hashtable_init函数签名,接受函数指针参数 - 更新内部字段名从key_cmp为cmp_func以保持一致性 - 添加类型定义scc_hashtable_hash_func_t和scc_hashtable_equal_func_t - 修改PAL层文件操作接口,使用枚举模式替代固定只读模式 - 更新IR上下文、预处理器宏表等组件使用新的初始化方式 - 移除AST头文件中未使用的语义分析回调类型定义 - 修复预处理器中的空指针访问问题
This commit is contained in:
@@ -34,7 +34,12 @@ void scc_pal_ewrite(const char *data, size_t len);
|
||||
/* File */
|
||||
|
||||
typedef void *scc_pal_file_t;
|
||||
scc_pal_file_t scc_pal_fopen(const char *path);
|
||||
typedef enum {
|
||||
SCC_FILE_PAL_READ,
|
||||
SCC_FILE_PAL_WRITE,
|
||||
SCC_FILE_PAL_APPEND,
|
||||
} scc_pal_fmode_t;
|
||||
scc_pal_file_t scc_pal_fopen(const char *path, scc_pal_fmode_t mode);
|
||||
void scc_pal_fclose(scc_pal_file_t f);
|
||||
size_t scc_pal_fread(scc_pal_file_t f, void *buf, size_t size);
|
||||
size_t scc_pal_fwrite(scc_pal_file_t f, const void *buf, size_t size);
|
||||
|
||||
Reference in New Issue
Block a user