Common Lisp Package: DIFFLIB

README:

FUNCTION

Public

OPCODE-I1 (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

OPCODE-I2 (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

OPCODE-J1 (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

OPCODE-J2 (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

OPCODE-TAG (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

OPCODE= (OP1 OP2)

Tests two opcodes for equality.

Undocumented

CONTEXT-DIFF (STREAM A B &KEY FROM-FILE TO-FILE FROM-FILE-DATE TO-FILE-DATE (N 3) (TEST-FUNCTION #'EQL) JUNK-FUNCTION)

GET-CLOSE-MATCHES (WORD POSSIBILITIES &KEY (MAX 3) (CUTOFF 0.6))

GROUP-OPCODES (OPCODES N)

MAKE-OPCODE (&KEY ((TAG DUM22) NIL) ((I1 DUM23) NIL) ((I2 DUM24) NIL) ((J1 DUM25) NIL) ((J2 DUM26) NIL))

SETFOPCODE-I1 (NEW-VALUE INSTANCE)

SETFOPCODE-I2 (NEW-VALUE INSTANCE)

SETFOPCODE-J1 (NEW-VALUE INSTANCE)

SETFOPCODE-J2 (NEW-VALUE INSTANCE)

OPCODE-P (OBJECT)

OPCODE-RANGE (OPCODE)

SETFOPCODE-TAG (NEW-VALUE INSTANCE)

UNIFIED-DIFF (STREAM A B &KEY FROM-FILE TO-FILE FROM-FILE-DATE TO-FILE-DATE (N 3) (TEST-FUNCTION #'EQL) JUNK-FUNCTION)

Private

HAS-KEY (KEY HASH)

Checks whether a key value is present in a hash table.

Undocumented

CALCULATE-SIMILARITY-RATIO (MATCHES LENGTH)

COPY-OPCODE (INSTANCE)

MACRO

Private

DO-RANGE ((VAR START-FORM END-FORM &OPTIONAL RESULT-FORM) &BODY BODY)

Iterates VAR through the range of integers in [START-FORM, END-FORM). Returns the value of END-FORM (at the time END-FORM is evaluated, VAR is bound to the value of END-FORM. (do-range (i 10 (length s)) (print (elt s i)))

ENUMERATE ((INDEX-VAR ELT-VAR SEQUENCE &OPTIONAL RESULT-FORM) &BODY BODY)

Iterates over a sequence while keeping track of an index. (enumerate (i e '(a b c)) (format T "~&~S ~S" i e)) => 1 a 2 b 3 c

GENERIC-FUNCTION

Public

Undocumented

GET-OPCODES (MATCHER)

QUICK-SIMILARITY-RATIO (MATCHER)

SET-SEQUENCE-A (MATCHER SEQ &OPTIONAL FORCE-P)

SET-SEQUENCE-B (MATCHER SEQ &OPTIONAL FORCE-P)

SET-SEQUENCES (MATCHER SEQ-A SEQ-B &OPTIONAL FORCE-P)

SIMILARITY-RATIO (MATCHER)

VERY-QUICK-SIMILARITY-RATIO (MATCHER)

Private

Undocumented

CHAIN-B (MATCHER)

FIND-LONGEST-MATCH (MATCHER ALO AHI BLO BHI)

GET-MATCHING-BLOCKS (MATCHER)

HELPER (MATCHER ALO AHI BLO BHI ANSWER)

SLOT-ACCESSOR

Public

Undocumented

JUNK-FUNCTION (OBJECT)

SETFJUNK-FUNCTION (NEW-VALUE OBJECT)

SEQUENCE-A (OBJECT)

SETFSEQUENCE-A (NEW-VALUE OBJECT)

SEQUENCE-B (OBJECT)

SETFSEQUENCE-B (NEW-VALUE OBJECT)

TEST-FUNCTION (OBJECT)

SETFTEST-FUNCTION (NEW-VALUE OBJECT)

Private

Undocumented

B-JUNK-FUNCTION (OBJECT)

SETFB-JUNK-FUNCTION (NEW-VALUE OBJECT)

B2J (OBJECT)

SETFB2J (NEW-VALUE OBJECT)

FULL-B-COUNT (OBJECT)

SETFFULL-B-COUNT (NEW-VALUE OBJECT)

MATCHING-BLOCKS (OBJECT)

SETFMATCHING-BLOCKS (NEW-VALUE OBJECT)

OPCODES (OBJECT)

SETFOPCODES (NEW-VALUE OBJECT)

CLASS

Public

OPCODE

A single instruction for modifying sequence A into sequence B, where TAG has the following possible values and meanings: :REPLACE a[i1:i2] should be replaced by b[j1:j2] :DELETE a[i1:i2] should be deleted :INSERT b[j2:j2] should be inserted :EQUAL a[i1:i2] = b[j1:j2]

SEQUENCE-MATCHER

The sequence-matcher class compares pairs of sequences. The main restriction is that sequence elements must be hashable (use :test-function to specify the type of hashtable).