aboutsummaryrefslogtreecommitdiff
path: root/patio-to-cranelift/src/patio/compilation_unit.rs
diff options
context:
space:
mode:
Diffstat (limited to 'patio-to-cranelift/src/patio/compilation_unit.rs')
-rw-r--r--patio-to-cranelift/src/patio/compilation_unit.rs67
1 files changed, 0 insertions, 67 deletions
diff --git a/patio-to-cranelift/src/patio/compilation_unit.rs b/patio-to-cranelift/src/patio/compilation_unit.rs
deleted file mode 100644
index af8b4d3f..00000000
--- a/patio-to-cranelift/src/patio/compilation_unit.rs
+++ /dev/null
@@ -1,67 +0,0 @@
-use crate::patio::{
- instructions::PatioInstruction,
- types::{PatioDataLayout, PatioType},
- values::PatioDataValue,
-};
-
-pub(crate) struct PatioCompilationUnit {
- pub(crate) elements: Vec<PatioCompilationUnitElement>,
-}
-
-pub(crate) enum PatioCompilationUnitElement {
- DataElementImmutableDefinition(PatioDataElementImmutableDefinition),
- DataElementMutableDefinition(PatioDataElementMutableDefinition),
- DataElementMutableDeclaration(PatioDataElementMutableDeclaration),
- FunctionDeclaration(PatioFunctionDeclaration),
- FunctionDefinition(PatioFunctionDefinition),
-}
-
-pub(crate) struct PatioDataElementImmutableDefinition {
- pub(crate) name: String,
- pub(crate) visibility: PatioVisibility,
- pub(crate) value: PatioDataValue,
-}
-
-pub(crate) struct PatioDataElementMutableDefinition {
- pub(crate) name: String,
- pub(crate) visibility: PatioVisibility,
- pub(crate) initial_value: PatioDataValue,
-}
-
-pub(crate) struct PatioDataElementMutableDeclaration {
- pub(crate) name: String,
- pub(crate) layout: PatioDataLayout,
-}
-
-pub(crate) struct PatioFunctionDeclaration {
- pub(crate) name: String,
- pub(crate) params: Vec<PatioLocal>,
- pub(crate) return_types: Vec<PatioType>,
-}
-
-pub(crate) struct PatioFunctionDefinition {
- pub(crate) name: String,
- pub(crate) visibility: PatioVisibility,
- pub(crate) locals: Vec<PatioLocal>,
- pub(crate) return_types: Vec<PatioType>,
- pub(crate) body: Vec<PatioInstruction>,
-}
-
-pub(crate) struct PatioLocal {
- pub(crate) name: String,
- pub(crate) type_: PatioType,
- pub(crate) local_type: PatioLocalType,
-}
-
-#[derive(Eq, PartialEq)]
-pub(crate) enum PatioLocalType {
- Param,
- Val,
- Var,
-}
-
-#[derive(Clone, Copy)]
-pub(crate) enum PatioVisibility {
- Public,
- Private,
-}