#morse #encoder #codec #decoder #conversion

mors

一个用于将莫尔斯电码转换为文本并反向转换的crate

2个版本

0.1.1 2019年6月27日
0.1.0 2019年6月27日

#2857 in 解析器实现

MIT许可证

19KB
428

Mors

一个简单的crate,可以将莫尔斯电码转换为字母,反之亦然。

结构

内部,莫尔斯电码使用树结构,这允许快速查找将莫尔斯电码解码为字母。对于编码,编码器使用集合和一种DFS(深度优先搜索),将已看到的节点插入集合,然后遍历给定的集合以找到要编码的给定字母。

用法

use mors::encoder;

let morse_encoder = encoder::Encoder::new();
let message = String::from("ET");
println!("{}",morse_encoder.encode_letters(message)) ==> ". -"




use mors::decoder;
let decoder = decoder::Decoder::new();
let message = String::from(". -");
println!("{}",decoder.decode_message(message)) ==> "ET"

莫尔斯电码表

莫尔斯电码表中的所有代码都可以在"codec.rs"文件中找到。

A => .-
B => -...
C => -.-.
D => -..
E => .
F => ..-.
G => --.
H => ....
I => ..
J => .---
K => -.-
L => .-..
M => --
N => -.
O => ---
P => .--.
Q => --.-
R => .-.
S => ...
T => -
U => ..-
V => ...-
W => .--
X => -..-
Y => -.--
Z => --..
CH => ----
0 => -----
1 => .----
2 => ..---
3 => ...--
4 => ....-
5 => .....
6 => -....
7 => --...
8 => ---..
9 => ----.
. => .-.-.-
, => --..--
? => ..--..
! => ..--.
: => ---...
" => .-..-.
' => .----.
= => -...-

开发

这是我创建的一个小crate,因为我想要在Rust中实现树结构。
如果发现错误,请提交问题

我将尝试使编码和解码更快,并清理代码,但现在它只是按我预期的样子工作。
如果您有任何扩展crate的建议,请提交问题或通过github或gitter联系我。

许可证

MIT许可证

版权所有 (c) 2019 Nick Anthony Flückiger

以下是对任何获得此软件及其相关文档文件(“软件”)副本的个人的免费许可:...

...

...

没有运行时依赖