Initial commit
This commit is contained in:
@@ -0,0 +1,109 @@
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Copyright (C) 2025 Max Bachmann
|
||||
# This file is generated by tools/generate_python.py
|
||||
from __future__ import annotations
|
||||
|
||||
import contextlib
|
||||
import os
|
||||
|
||||
from rapidfuzz._feature_detector import AVX2, SSE2, supports
|
||||
|
||||
__all__ = ["Editop", "Editops", "MatchingBlock", "Opcode", "Opcodes", "ScoreAlignment"]
|
||||
|
||||
_impl = os.environ.get("RAPIDFUZZ_IMPLEMENTATION")
|
||||
if _impl == "cpp":
|
||||
imported = False
|
||||
if supports(AVX2):
|
||||
with contextlib.suppress(ImportError):
|
||||
from rapidfuzz.distance._initialize_cpp_avx2 import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
|
||||
imported = True
|
||||
|
||||
if not imported and supports(SSE2):
|
||||
with contextlib.suppress(ImportError):
|
||||
from rapidfuzz.distance._initialize_cpp_sse2 import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
|
||||
imported = True
|
||||
|
||||
if not imported:
|
||||
from rapidfuzz.distance._initialize_cpp import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
elif _impl == "python":
|
||||
from rapidfuzz.distance._initialize_py import (
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
else:
|
||||
imported = False
|
||||
if supports(AVX2):
|
||||
with contextlib.suppress(ImportError):
|
||||
from rapidfuzz.distance._initialize_cpp_avx2 import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
|
||||
imported = True
|
||||
|
||||
if not imported and supports(SSE2):
|
||||
with contextlib.suppress(ImportError):
|
||||
from rapidfuzz.distance._initialize_cpp_sse2 import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
|
||||
imported = True
|
||||
|
||||
if not imported:
|
||||
with contextlib.suppress(ImportError):
|
||||
from rapidfuzz.distance._initialize_cpp import ( # pyright: ignore[reportMissingImports]
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
|
||||
imported = True
|
||||
|
||||
if not imported:
|
||||
from rapidfuzz.distance._initialize_py import (
|
||||
Editop,
|
||||
Editops,
|
||||
MatchingBlock,
|
||||
Opcode,
|
||||
Opcodes,
|
||||
ScoreAlignment,
|
||||
)
|
||||
Reference in New Issue
Block a user