76 lines
2.1 KiB
Cython
76 lines
2.1 KiB
Cython
|
|
from libc.stdint cimport int64_t, uint32_t
|
||
|
|
from libcpp cimport bool
|
||
|
|
|
||
|
|
|
||
|
|
cdef extern from "rapidfuzz.h":
|
||
|
|
cdef enum RF_StringType:
|
||
|
|
RF_UINT8
|
||
|
|
RF_UINT16
|
||
|
|
RF_UINT32
|
||
|
|
RF_UINT64
|
||
|
|
|
||
|
|
uint32_t RF_SCORER_FLAG_MULTI_STRING_INIT
|
||
|
|
uint32_t RF_SCORER_FLAG_MULTI_STRING_CALL
|
||
|
|
uint32_t RF_SCORER_FLAG_RESULT_F64
|
||
|
|
uint32_t RF_SCORER_FLAG_RESULT_I64
|
||
|
|
uint32_t RF_SCORER_FLAG_SYMMETRIC
|
||
|
|
uint32_t RF_SCORER_FLAG_TRIANGLE_INEQUALITY
|
||
|
|
|
||
|
|
ctypedef struct RF_String:
|
||
|
|
void (*dtor) (RF_String*) nogil
|
||
|
|
|
||
|
|
RF_StringType kind
|
||
|
|
void* data
|
||
|
|
int64_t length
|
||
|
|
void* context
|
||
|
|
|
||
|
|
ctypedef bool (*RF_Preprocess) (object, RF_String*) except False
|
||
|
|
|
||
|
|
uint32_t PREPROCESSOR_STRUCT_VERSION
|
||
|
|
|
||
|
|
ctypedef struct RF_Preprocessor:
|
||
|
|
uint32_t version
|
||
|
|
RF_Preprocess preprocess
|
||
|
|
|
||
|
|
ctypedef struct RF_Kwargs:
|
||
|
|
void (*dtor) (RF_Kwargs*)
|
||
|
|
|
||
|
|
void* context
|
||
|
|
|
||
|
|
ctypedef bool (*RF_KwargsInit) (RF_Kwargs*, dict) except False
|
||
|
|
|
||
|
|
ctypedef union _RF_ScorerFunc_union:
|
||
|
|
bool (*f64) (const RF_ScorerFunc*, const RF_String*, int64_t, double, double*) except False nogil
|
||
|
|
bool (*i64) (const RF_ScorerFunc*, const RF_String*, int64_t, int64_t, int64_t*) except False nogil
|
||
|
|
|
||
|
|
ctypedef struct RF_ScorerFunc:
|
||
|
|
void (*dtor) (RF_ScorerFunc*) nogil
|
||
|
|
_RF_ScorerFunc_union call
|
||
|
|
|
||
|
|
void* context
|
||
|
|
|
||
|
|
ctypedef bool (*RF_ScorerFuncInit) (RF_ScorerFunc*, const RF_Kwargs*, int64_t, const RF_String*) except False nogil
|
||
|
|
|
||
|
|
ctypedef union _RF_RF_ScorerFlags_OptimalScore_union:
|
||
|
|
double f64
|
||
|
|
int64_t i64
|
||
|
|
|
||
|
|
ctypedef union _RF_RF_ScorerFlags_WorstScore_union:
|
||
|
|
double f64
|
||
|
|
int64_t i64
|
||
|
|
|
||
|
|
ctypedef struct RF_ScorerFlags:
|
||
|
|
uint32_t flags
|
||
|
|
_RF_RF_ScorerFlags_OptimalScore_union optimal_score
|
||
|
|
_RF_RF_ScorerFlags_WorstScore_union worst_score
|
||
|
|
|
||
|
|
ctypedef bool (*RF_GetScorerFlags) (const RF_Kwargs*, RF_ScorerFlags*) except False nogil
|
||
|
|
|
||
|
|
uint32_t SCORER_STRUCT_VERSION
|
||
|
|
|
||
|
|
ctypedef struct RF_Scorer:
|
||
|
|
uint32_t version
|
||
|
|
RF_KwargsInit kwargs_init
|
||
|
|
RF_GetScorerFlags get_scorer_flags
|
||
|
|
RF_ScorerFuncInit scorer_func_init
|