pax_runtime_api/
constants.rs

1#![allow(unused)]
2pub const NUMERIC: &str = "Numeric";
3pub const SIZE: &str = "Size";
4pub const ROTATION: &str = "Rotation";
5pub const DEGREES: &str = "Degrees";
6pub const RADIANS: &str = "Radians";
7pub const PIXELS: &str = "Pixels";
8pub const PERCENT: &str = "Percent";
9pub const INTEGER: &str = "Integer";
10pub const I64: &str = "I64";
11pub const F64: &str = "F64";
12pub const TRUE: &str = "true";
13pub const COLOR: &str = "Color";
14pub const COLOR_CHANNEL: &str = "ColorChannel";
15
16pub const TYPE_ID_IF: &str = "IF";
17pub const TYPE_ID_REPEAT: &str = "REPEAT";
18pub const TYPE_ID_SLOT: &str = "SLOT";
19pub const TYPE_ID_COMMENT: &str = "COMMENT";
20
21pub const COMMON_PROPERTIES: [&str; 13] = [
22    "id",
23    "x",
24    "y",
25    "scale_x",
26    "scale_y",
27    "skew_x",
28    "skew_y",
29    "anchor_x",
30    "anchor_y",
31    "rotate",
32    "transform",
33    "width",
34    "height",
35];
36
37pub fn is_intoable_downstream_type(type_to_check: &str) -> bool {
38    BLESSED_INTOABLE_DOWNSTREAM_TYPES
39        .iter()
40        .any(|bidt| type_to_check.contains(*bidt))
41}
42
43// Only when parsing values for one of the types in this slice
44// will we look ahead and parse for an IntoableLiteral value.
45const BLESSED_INTOABLE_DOWNSTREAM_TYPES: [&'static str; 5] = [
46    "pax_engine::api::Size",
47    "pax_engine::api::Rotation",
48    "pax_engine::api::ColorChannel",
49    "pax_engine::api::Stroke",
50    "pax_engine::api::Fill",
51];
52
53pub const COMMON_PROPERTIES_TYPE: &[(&str, &str)] = &[
54    ("id", "String"),
55    ("x", "pax_engine::api::Size"),
56    ("y", "pax_engine::api::Size"),
57    ("scale_x", "pax_engine::api::Size"),
58    ("scale_y", "pax_engine::api::Size"),
59    ("skew_x", "pax_engine::api::Rotation"),
60    ("skew_y", "pax_engine::api::Rotation"),
61    ("anchor_x", "pax_engine::api::Size"),
62    ("anchor_y", "pax_engine::api::Size"),
63    ("rotate", "pax_engine::api::Rotation"),
64    ("transform", "pax_engine::api::Transform2D"),
65    ("width", "pax_engine::api::Size"),
66    ("height", "pax_engine::api::Size"),
67    ("_raycastable", "bool"),
68];