rename character set and rename methods

This commit is contained in:
Henry Schimke
2023-03-04 11:47:39 -06:00
parent c81c6578d0
commit 15859b9f10
29 changed files with 329 additions and 363 deletions

View File

@@ -23,7 +23,7 @@ use crate::{
encoder::HighLevelEncoder,
shared_test_methods::{stripSpace, toBitArray, toBooleanArray},
},
common::CharacterSetECI,
common::CharacterSet,
BarcodeFormat, EncodeHintType, EncodeHintValue, Point,
};
@@ -40,10 +40,10 @@ use rand::Rng;
* @author Frank Yellin
*/
const ISO_8859_1: CharacterSetECI = CharacterSetECI::ISO8859_1; //StandardCharsets.ISO_8859_1;
const UTF_8: CharacterSetECI = CharacterSetECI::UTF8; //StandardCharsets.UTF_8;
const ISO_8859_15: CharacterSetECI = CharacterSetECI::ISO8859_15; //Charset.forName("ISO-8859-15");
const WINDOWS_1252: CharacterSetECI = CharacterSetECI::Cp1252; //Charset.forName("Windows-1252");
const ISO_8859_1: CharacterSet = CharacterSet::ISO8859_1; //StandardCharsets.ISO_8859_1;
const UTF_8: CharacterSet = CharacterSet::UTF8; //StandardCharsets.UTF_8;
const ISO_8859_15: CharacterSet = CharacterSet::ISO8859_15; //Charset.forName("ISO-8859-15");
const WINDOWS_1252: CharacterSet = CharacterSet::Cp1252; //Charset.forName("Windows-1252");
// const DOTX: &str = "[^.X]";
// const SPACES: &str = "\\s+";
@@ -137,8 +137,8 @@ X X X X X X X X X X X X X
#[test]
fn testAztecWriter() {
let shift_jis: CharacterSetECI =
CharacterSetECI::getCharacterSetECIByName("Shift_JIS").expect("must exist");
let shift_jis: CharacterSet =
CharacterSet::get_character_set_by_name("Shift_JIS").expect("must exist");
testWriter("Espa\u{00F1}ol", None, 25, true, 1); // Without ECI (implicit ISO-8859-1)
testWriter("Espa\u{00F1}ol", Some(ISO_8859_1), 25, true, 1); // Explicit ISO-8859-1
@@ -148,7 +148,7 @@ fn testAztecWriter() {
testWriter("\u{20AC} 1 sample data.", Some(ISO_8859_15), 0, true, 2);
testWriter(
"\u{20AC} 1 sample data.",
Some(CharacterSetECI::UnicodeBigUnmarked),
Some(CharacterSet::UnicodeBigUnmarked),
0,
true,
3,
@@ -709,7 +709,7 @@ fn testEncodeDecode(data: &str, compact: bool, layers: u32) {
fn testWriter(
data: &str,
charset: Option<CharacterSetECI>,
charset: Option<CharacterSet>,
ecc_percent: u32,
compact: bool,
layers: u32,
@@ -719,7 +719,7 @@ fn testWriter(
if charset.is_some() {
hints.insert(
EncodeHintType::CHARACTER_SET,
EncodeHintValue::CharacterSet(charset.unwrap().getCharsetName().to_string()),
EncodeHintValue::CharacterSet(charset.unwrap().get_charset_name().to_string()),
);
}
// if (null != charset) {
@@ -735,7 +735,7 @@ fn testWriter(
let cset = match charset {
Some(cs) => cs,
None => CharacterSetECI::ISO8859_1,
None => CharacterSet::ISO8859_1,
};
let aztec = aztec_encoder::encode_with_charset(
data,
@@ -818,10 +818,10 @@ fn testStuffBits(wordSize: usize, bits: &str, expected: &str) {
fn testHighLevelEncodeStringUtf8(s: &str, expectedBits: &str) {
let bits = HighLevelEncoder::with_charset(
CharacterSetECI::UTF8
CharacterSet::UTF8
.encode(s)
.expect("should encode to bytes"),
CharacterSetECI::UTF8,
CharacterSet::UTF8,
)
.encode()
.expect("high level ok");
@@ -841,7 +841,7 @@ fn testHighLevelEncodeStringUtf8(s: &str, expectedBits: &str) {
fn testHighLevelEncodeString(s: &str, expectedBits: &str) {
let bits = HighLevelEncoder::new(
CharacterSetECI::ISO8859_1
CharacterSet::ISO8859_1
.encode(s)
.expect("should encode to bytes"),
)
@@ -862,7 +862,7 @@ fn testHighLevelEncodeString(s: &str, expectedBits: &str) {
fn testHighLevelEncodeStringCount(s: &str, expectedReceivedBits: u32) {
let bits = HighLevelEncoder::new(
CharacterSetECI::ISO8859_1
CharacterSet::ISO8859_1
.encode(s)
.expect("should encode to bytes"),
)

View File

@@ -17,7 +17,7 @@
use std::collections::HashMap;
use crate::{
common::{BitMatrix, CharacterSetECI, Result},
common::{BitMatrix, CharacterSet, Result},
exceptions::Exceptions,
BarcodeFormat, EncodeHintType, EncodeHintValue, Writer,
};
@@ -56,7 +56,7 @@ impl Writer for AztecWriter {
hints.get(&EncodeHintType::CHARACTER_SET)
{
if cset_name.to_lowercase() != "iso-8859-1" {
charset = CharacterSetECI::getCharacterSetECIByName(cset_name);
charset = CharacterSet::get_character_set_by_name(cset_name);
}
}
if let Some(EncodeHintValue::ErrorCorrection(ecc_level)) =
@@ -86,7 +86,7 @@ fn encode(
format: BarcodeFormat,
width: u32,
height: u32,
charset: Option<CharacterSetECI>,
charset: Option<CharacterSet>,
ecc_percent: u32,
layers: i32,
) -> Result<BitMatrix> {

View File

@@ -19,7 +19,7 @@ use crate::{
reedsolomon::{
get_predefined_genericgf, GenericGFRef, PredefinedGenericGF, ReedSolomonDecoder,
},
BitMatrix, CharacterSetECI, DecoderRXingResult, DetectorRXingResult, Result,
BitMatrix, CharacterSet, DecoderRXingResult, DetectorRXingResult, Result,
},
exceptions::Exceptions,
};
@@ -114,7 +114,7 @@ fn get_encoded_data(corrected_bits: &[bool]) -> Result<String> {
// when character encoding changes (ECI) or input ends.
let mut decoded_bytes: Vec<u8> = Vec::new();
let mut encdr: CharacterSetECI = CharacterSetECI::ISO8859_1;
let mut encdr: CharacterSet = CharacterSet::ISO8859_1;
let mut index = 0;
@@ -182,7 +182,7 @@ fn get_encoded_data(corrected_bits: &[bool]) -> Result<String> {
eci = eci * 10 + (next_digit - 2);
n -= 1;
}
let charset_eci = CharacterSetECI::getCharacterSetECIByValue(eci);
let charset_eci = CharacterSet::get_character_set_by_eci(eci);
if charset_eci.is_err() {
return Err(Exceptions::format_with("Charset must exist"));
}

View File

@@ -19,7 +19,7 @@ use crate::{
reedsolomon::{
get_predefined_genericgf, GenericGFRef, PredefinedGenericGF, ReedSolomonEncoder,
},
BitArray, BitMatrix, CharacterSetECI, Result,
BitArray, BitMatrix, CharacterSet, Result,
},
exceptions::Exceptions,
};
@@ -49,7 +49,7 @@ pub const WORD_SIZE: [u32; 33] = [
* @return Aztec symbol matrix with metadata
*/
pub fn encode_simple(data: &str) -> Result<AztecCode> {
let Ok(bytes) =CharacterSetECI::ISO8859_1.encode_replace(data) else {
let Ok(bytes) =CharacterSet::ISO8859_1.encode_replace(data) else {
return Err(Exceptions::illegal_argument_with(format!("'{data}' cannot be encoded as ISO_8859_1")));
};
encode_bytes_simple(&bytes)
@@ -65,7 +65,7 @@ pub fn encode_simple(data: &str) -> Result<AztecCode> {
* @return Aztec symbol matrix with metadata
*/
pub fn encode(data: &str, minECCPercent: u32, userSpecifiedLayers: i32) -> Result<AztecCode> {
if let Ok(bytes) = CharacterSetECI::ISO8859_1.encode(data) {
if let Ok(bytes) = CharacterSet::ISO8859_1.encode(data) {
encode_bytes(&bytes, minECCPercent, userSpecifiedLayers)
} else {
Err(Exceptions::illegal_argument_with(format!(
@@ -90,7 +90,7 @@ pub fn encode_with_charset(
data: &str,
minECCPercent: u32,
userSpecifiedLayers: i32,
charset: CharacterSetECI,
charset: CharacterSet,
) -> Result<AztecCode> {
if let Ok(bytes) = charset.encode(data) {
encode_bytes_with_charset(&bytes, minECCPercent, userSpecifiedLayers, charset)
@@ -129,7 +129,7 @@ pub fn encode_bytes(
data,
minECCPercent,
userSpecifiedLayers,
CharacterSetECI::ISO8859_1,
CharacterSet::ISO8859_1,
)
}
@@ -148,7 +148,7 @@ pub fn encode_bytes_with_charset(
data: &[u8],
min_eccpercent: u32,
user_specified_layers: i32,
charset: CharacterSetECI,
charset: CharacterSet,
) -> Result<AztecCode> {
// High-level encode
let bits = HighLevelEncoder::with_charset(data.into(), charset).encode()?;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
use crate::common::{BitArray, CharacterSetECI, Result};
use crate::common::{BitArray, CharacterSet, Result};
use super::{State, Token};
@@ -32,7 +32,7 @@ use super::{State, Token};
*/
pub struct HighLevelEncoder {
text: Vec<u8>,
charset: CharacterSetECI,
charset: CharacterSet,
}
impl HighLevelEncoder {
@@ -226,11 +226,11 @@ impl HighLevelEncoder {
pub fn new(text: Vec<u8>) -> Self {
Self {
text,
charset: CharacterSetECI::ISO8859_1,
charset: CharacterSet::ISO8859_1,
}
}
pub fn with_charset(text: Vec<u8>, charset: CharacterSetECI) -> Self {
pub fn with_charset(text: Vec<u8>, charset: CharacterSet) -> Self {
Self { text, charset }
}
@@ -240,9 +240,9 @@ impl HighLevelEncoder {
pub fn encode(&self) -> Result<BitArray> {
let mut initial_state = State::new(Token::new(), Self::MODE_UPPER as u32, 0, 0);
//if let Some(eci) = CharacterSetECI::getCharacterSetECI(self.charset) {
if self.charset != CharacterSetECI::ISO8859_1 {
if self.charset != CharacterSet::ISO8859_1 {
//} && eci != CharacterSetECI::Cp1252 {
initial_state = initial_state.appendFLGn(self.charset.getValue())?;
initial_state = initial_state.appendFLGn(self.charset.get_eci_value())?;
}
// } else {
// return Err(Exceptions::illegal_argument_with(

View File

@@ -17,7 +17,7 @@
use std::fmt;
use crate::{
common::{BitArray, CharacterSetECI, Result},
common::{BitArray, CharacterSet, Result},
exceptions::Exceptions,
};
@@ -86,7 +86,7 @@ impl State {
));
// throw new IllegalArgumentException("ECI code must be between 0 and 999999");
} else {
let Ok(eci_digits) = CharacterSetECI::ISO8859_1
let Ok(eci_digits) = CharacterSet::ISO8859_1
.encode(&format!("{eci}"))
else {
return Err(Exceptions::ILLEGAL_ARGUMENT)