Move operations on solids to be declared in KCL (#6462)

* Declare chamfer in KCL

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Ignore more in the simulation tests

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Declare fillet in KCL

Signed-off-by: Nick Cameron <nrc@ncameron.org>

* Move shell and hollow to KCL

Signed-off-by: Nick Cameron <nrc@ncameron.org>

---------

Signed-off-by: Nick Cameron <nrc@ncameron.org>
This commit is contained in:
Nick Cameron
2025-04-28 14:20:38 +12:00
committed by GitHub
parent 4439229ad2
commit efba773635
147 changed files with 6136 additions and 48096 deletions

View File

@ -3129,12 +3129,13 @@ impl fmt::Display for PrimitiveType {
#[derive(Debug, Clone, Deserialize, Serialize, PartialEq, ts_rs::TS, JsonSchema)]
#[ts(export)]
#[serde(tag = "type")]
#[allow(clippy::large_enum_variant)]
pub enum Type {
/// A primitive type.
Primitive(PrimitiveType),
// An array of a primitive type.
Array {
ty: PrimitiveType,
ty: Box<Type>,
len: ArrayLen,
},
// Union/enum types
@ -3784,14 +3785,14 @@ const cylinder = startSketchOn('-XZ')
assert_eq!(
params[0].type_.as_ref().unwrap().inner,
Type::Array {
ty: PrimitiveType::Number(NumericSuffix::None),
ty: Box::new(Type::Primitive(PrimitiveType::Number(NumericSuffix::None))),
len: ArrayLen::None
}
);
assert_eq!(
params[1].type_.as_ref().unwrap().inner,
Type::Array {
ty: PrimitiveType::String,
ty: Box::new(Type::Primitive(PrimitiveType::String)),
len: ArrayLen::None
}
);
@ -3822,7 +3823,7 @@ const cylinder = startSketchOn('-XZ')
assert_eq!(
params[0].type_.as_ref().unwrap().inner,
Type::Array {
ty: PrimitiveType::Number(NumericSuffix::None),
ty: Box::new(Type::Primitive(PrimitiveType::Number(NumericSuffix::None))),
len: ArrayLen::None
}
);
@ -3862,7 +3863,7 @@ const cylinder = startSketchOn('-XZ')
),
type_: Some(Node::new(
Type::Array {
ty: PrimitiveType::String,
ty: Box::new(Type::Primitive(PrimitiveType::String)),
len: ArrayLen::None
},
59,
@ -3951,7 +3952,7 @@ const cylinder = startSketchOn('-XZ')
),
type_: Some(Node::new(
Type::Array {
ty: PrimitiveType::String,
ty: Box::new(Type::Primitive(PrimitiveType::String)),
len: ArrayLen::None
},
37,

View File

@ -2819,7 +2819,7 @@ fn array_type(i: &mut TokenSlice) -> PResult<Node<Type>> {
}
open_bracket(i)?;
let ty = primitive_type(i)?;
let ty = argument_type(i)?;
let len = opt((
semi_colon,
opt_whitespace,
@ -2858,7 +2858,7 @@ fn array_type(i: &mut TokenSlice) -> PResult<Node<Type>> {
ArrayLen::None
};
Ok(ty.map(|ty| Type::Array { ty, len }))
Ok(ty.map(|ty| Type::Array { ty: Box::new(ty), len }))
}
fn uom_for_type(i: &mut TokenSlice) -> PResult<NumericSuffix> {