Hide intrinsic binary operators in alternate mode
This commit is contained in:
		
							parent
							
								
									17e8cf4807
								
							
						
					
					
						commit
						45d381f865
					
				| @ -152,7 +152,7 @@ pub fn perform_all_passes<'map>( | ||||
|     } | ||||
| 
 | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{}", &context); | ||||
|     println!("{:#}", &context); | ||||
| 
 | ||||
|     let state = context.pass(&mut LinkerPass { | ||||
|         module_map, | ||||
| @ -162,7 +162,7 @@ pub fn perform_all_passes<'map>( | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{:-^100}", "LINKER OUTPUT"); | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{}", &context); | ||||
|     println!("{:#}", &context); | ||||
|     #[cfg(debug_assertions)] | ||||
|     dbg!(&state); | ||||
| 
 | ||||
| @ -202,7 +202,7 @@ pub fn perform_all_passes<'map>( | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{:-^100}", "TYPECHECKER OUTPUT"); | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{}", &context); | ||||
|     println!("{:#}", &context); | ||||
|     #[cfg(debug_assertions)] | ||||
|     dbg!(&state); | ||||
| 
 | ||||
| @ -243,7 +243,7 @@ pub fn compile_and_pass<'map>( | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{:-^100}", "FINAL OUTPUT"); | ||||
|     #[cfg(debug_assertions)] | ||||
|     println!("{}", &mir_context); | ||||
|     println!("{:#}", &mir_context); | ||||
| 
 | ||||
|     let mut context = Context::new(format!("Reid ({})", env!("CARGO_PKG_VERSION"))); | ||||
|     let codegen_modules = match mir_context.codegen(&mut context) { | ||||
|  | ||||
| @ -15,6 +15,8 @@ impl Display for Context { | ||||
| 
 | ||||
| impl Display for Module { | ||||
|     fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { | ||||
|         let is_alternate = f.alternate(); | ||||
| 
 | ||||
|         writeln!(f, "Module({}) ({}) {{", self.name, self.module_id)?; | ||||
| 
 | ||||
|         let mut state = Default::default(); | ||||
| @ -23,9 +25,27 @@ impl Display for Module { | ||||
|         for import in &self.imports { | ||||
|             writeln!(inner_f, "{}", import)?; | ||||
|         } | ||||
|         for binop in &self.binop_defs { | ||||
| 
 | ||||
|         let intrinsic_binops = self | ||||
|             .binop_defs | ||||
|             .iter() | ||||
|             .filter(|b| matches!(b.fn_kind, FunctionDefinitionKind::Intrinsic(_))); | ||||
| 
 | ||||
|         for binop in self | ||||
|             .binop_defs | ||||
|             .iter() | ||||
|             .filter(|b| !matches!(b.fn_kind, FunctionDefinitionKind::Intrinsic(_))) | ||||
|         { | ||||
|             writeln!(inner_f, "{}", binop)?; | ||||
|         } | ||||
| 
 | ||||
|         if is_alternate { | ||||
|             writeln!(inner_f, "... <{}> intrinsic binary operators", intrinsic_binops.count())?; | ||||
|         } else { | ||||
|             for binop in intrinsic_binops { | ||||
|                 writeln!(inner_f, "{}", binop)?; | ||||
|             } | ||||
|         } | ||||
|         for typedef in &self.typedefs { | ||||
|             writeln!(inner_f, "{}", typedef)?; | ||||
|         } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user