diff --git a/radiate-examples/nqueens/src/main.rs b/radiate-examples/nqueens/src/main.rs index 1a86908d..9b694c9d 100644 --- a/radiate-examples/nqueens/src/main.rs +++ b/radiate-examples/nqueens/src/main.rs @@ -53,6 +53,4 @@ fn main() { } println!(); } - - println!(); } diff --git a/radiate/src/engines/genome/genes/int_gene.rs b/radiate/src/engines/genome/genes/int_gene.rs index 8346a367..57aa6ef5 100644 --- a/radiate/src/engines/genome/genes/int_gene.rs +++ b/radiate/src/engines/genome/genes/int_gene.rs @@ -176,6 +176,15 @@ where } } +impl> From for IntGene +where + Standard: rand::distributions::Distribution, +{ + fn from(allele: T) -> Self { + IntGene::new(allele) + } +} + impl From> for i8 { fn from(gene: IntGene) -> Self { gene.allele @@ -206,33 +215,33 @@ impl From> for i128 { } } -impl From for IntGene { - fn from(allele: i8) -> Self { - IntGene::new(allele) +impl From> for u8 { + fn from(gene: IntGene) -> Self { + gene.allele } } -impl From for IntGene { - fn from(allele: i16) -> Self { - IntGene::new(allele) +impl From> for u16 { + fn from(gene: IntGene) -> Self { + gene.allele } } -impl From for IntGene { - fn from(allele: i32) -> Self { - IntGene::new(allele) +impl From> for u32 { + fn from(gene: IntGene) -> Self { + gene.allele } } -impl From for IntGene { - fn from(allele: i64) -> Self { - IntGene::new(allele) +impl From> for u64 { + fn from(gene: IntGene) -> Self { + gene.allele } } -impl From for IntGene { - fn from(allele: i128) -> Self { - IntGene::new(allele) +impl From> for u128 { + fn from(gene: IntGene) -> Self { + gene.allele } }