cortex_lang/parsing/ast/
program.rs1use std::vec::IntoIter;
2
3use crate::parsing::codegen::r#trait::SimpleCodeGen;
4
5use super::top_level::TopLevel;
6
7pub struct Program {
8 pub(crate) content: Vec<TopLevel>,
9}
10impl SimpleCodeGen for Program {
11 fn codegen(&self, indent: usize) -> String {
12 let mut s = String::new();
13 for c in &self.content {
14 s.push_str(&c.codegen(indent));
15 }
16 s
17 }
18}
19impl IntoIterator for Program {
20 type Item = TopLevel;
21
22 type IntoIter = IntoIter<TopLevel>;
23
24 fn into_iter(self) -> Self::IntoIter {
25 self.content.into_iter()
26 }
27}