[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pyim 504f20fd49 02/12: cl-defgeneric pyim-dcache-insert
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pyim 504f20fd49 02/12: cl-defgeneric pyim-dcache-insert-word |
Date: |
Thu, 9 Jun 2022 10:57:52 -0400 (EDT) |
branch: externals/pyim
commit 504f20fd49ec8171c9242028bb578b3b79bdd4f4
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>
cl-defgeneric pyim-dcache-insert-word
---
pyim-dcache.el | 10 ++--------
pyim-dhashcache.el | 14 ++++++++++++++
pyim-dregcache.el | 6 ++++++
3 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/pyim-dcache.el b/pyim-dcache.el
index 93f5c520ef..b895774e15 100644
--- a/pyim-dcache.el
+++ b/pyim-dcache.el
@@ -239,17 +239,11 @@ non-nil,文件存在时将会提示用户是否覆盖,默认为覆盖模式"
(pyim-dcache-call-api 'update-iword2count word wordcount-handler))
;; ** Dcache 加词功能
-(defun pyim-dcache-insert-word (word code prepend)
+(cl-defgeneric pyim-dcache-insert-word (word code prepend)
"将词条 WORD 插入到 dcache 中。
如果 PREPEND 为 non-nil, 词条将放到已有词条的最前面。
-内部函数会根据 CODE 来确定插入对应的 hash key."
- (pyim-dcache-call-api 'insert-word-into-icode2word word code prepend)
- ;; NOTE: 保存词条到 icode2word 词库缓存的同时,也在 ishortcode2word 词库缓存中
- ;; 临时写入一份,供当前 Emacs session 使用,但退出时 pyim 不会保存
- ;; ishortcode2word 词库缓存到文件,因为下次启动 Emacs 的时候,ishortcode2word
- ;; 词库缓存会从 icode2word 再次重建。
- (pyim-dcache-call-api 'insert-word-into-ishortcode2word word code prepend))
+内部函数会根据 CODE 来确定插入对应的 hash key.")
;; ** Dcache 升级功能
(cl-defgeneric pyim-dcache-upgrade ()
diff --git a/pyim-dhashcache.el b/pyim-dhashcache.el
index 3e4c13388f..3ce3775f52 100644
--- a/pyim-dhashcache.el
+++ b/pyim-dhashcache.el
@@ -664,6 +664,20 @@ code 对应的中文词条了。
(remhash word pyim-dhashcache-iword2count-log)
(remhash word pyim-dhashcache-iword2priority))
+(cl-defmethod pyim-dcache-insert-word
+ (word code prepend
+ &context (pyim-dcache-backend (eql pyim-dhashcache)))
+ "将词条 WORD 插入到下面两个词库缓存中。
+
+1. `pyim-dhashcache-icode2word'
+2. `pyim-dhashcache-insert-word-into-ishortcode2word'."
+ (pyim-dhashcache-insert-word-into-icode2word word code prepend)
+ ;; NOTE: 保存词条到 icode2word 词库缓存的同时,也在 ishortcode2word 词库缓存中
+ ;; 临时写入一份,供当前 Emacs session 使用,但退出时 pyim 不会保存
+ ;; ishortcode2word 词库缓存到文件,因为下次启动 Emacs 的时候,ishortcode2word
+ ;; 词库缓存会从 icode2word 再次重建。
+ (pyim-dhashcache-insert-word-into-ishortcode2word word code prepend))
+
(defun pyim-dhashcache-insert-word-into-icode2word (word code prepend)
"将词条 WORD 插入到 icode2word 词库缓存 CODE 键对应的位置.
diff --git a/pyim-dregcache.el b/pyim-dregcache.el
index 6ce1e17256..2c09913e3e 100644
--- a/pyim-dregcache.el
+++ b/pyim-dregcache.el
@@ -397,6 +397,12 @@ DICT-FILES 是词库文件列表. DICTS-MD5 是词库的MD5校验码.
;; 删除对应词条的词频
(remhash word pyim-dregcache-iword2count))
+(cl-defmethod pyim-dcache-insert-word
+ (word code prepend
+ &context (pyim-dcache-backend (eql pyim-dregcache)))
+ "将词条 WORD 插入到 `pyim-dregcache-icode2word'."
+ (pyim-dregcache-insert-word-into-icode2word word code prepend))
+
(defun pyim-dregcache-insert-word-into-icode2word (word code prepend)
"保存个人词到缓存,和其他词库格式一样以共享正则搜索算法."
(when pyim-debug
- [elpa] externals/pyim updated (1e0834c456 -> 6c05a5fc03), ELPA Syncer, 2022/06/09
- [elpa] externals/pyim b33d2f2a75 04/12: cl-defgeneric pyim-dcache-update, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 156d282073 06/12: cl-defgeneric pyim-dcache-save-caches, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 7288242a6d 10/12: Sort dcache.el, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 371d2ee095 05/12: cl-defgeneric pyim-dcache-export-*, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim fb74c9fc93 01/12: cl-defgeneric pyim-dcache-upgrade, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 12435095d3 08/12: Sort dcache, dhashcache, dregcache, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 504f20fd49 02/12: cl-defgeneric pyim-dcache-insert-word,
ELPA Syncer <=
- [elpa] externals/pyim e0f80e5d36 11/12: Merge branch 'dcache', ELPA Syncer, 2022/06/09
- [elpa] externals/pyim f6a45f6506 03/12: cl-defgeneric pyim-dcache-update-wordcount, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 41564f3d74 09/12: Sort dregcache, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 6c05a5fc03 12/12: Fix pyim-tests.el, ELPA Syncer, 2022/06/09
- [elpa] externals/pyim 05d95422b9 07/12: cl-defgeneric rest dcache interfaces., ELPA Syncer, 2022/06/09