kham_core/lib.rs
1//! # kham-core
2//!
3//! Pure Rust Thai word segmentation engine. `no_std` compatible (requires `alloc`).
4//!
5//! ## Quick start
6//!
7//! ```rust
8//! use kham_core::Tokenizer;
9//!
10//! let tokenizer = Tokenizer::new();
11//! let tokens = tokenizer.segment("กินข้าวกับปลา");
12//! for token in &tokens {
13//! println!("{} ({:?})", token.text, token.kind);
14//! }
15//! ```
16#![no_std]
17#![forbid(unsafe_code)]
18#![warn(missing_docs)]
19
20extern crate alloc;
21
22pub mod dict;
23pub mod error;
24pub mod freq;
25pub mod fts;
26pub mod ne;
27pub mod ngram;
28pub mod normalizer;
29pub mod pos;
30pub mod pre_tokenizer;
31pub mod romanizer;
32pub mod segmenter;
33pub mod stopwords;
34pub mod synonym;
35pub mod tcc;
36pub mod token;
37
38pub use error::KhamError;
39pub use segmenter::{Tokenizer, TokenizerBuilder};
40pub use token::{NamedEntityKind, Token, TokenKind};