<commit_before>namespace Boojay.Compilation.Steps

import System.IO

import Boo.Lang.Compiler
import Boo.Lang.Compiler.Ast
import Boo.Lang.Compiler.Steps
import Boo.Lang.Compiler.TypeSystem
import Boo.Lang.Compiler.TypeSystem.Internal

import Boo.Lang.PatternMatching

import org.objectweb.asm
import org.objectweb.asm.Type

import Boojay.Compilation.TypeSystem

class BoojayEmitter(AbstractVisitorCompilerStep):
		
	_classVisitor as ClassVisitor
	_code as MethodVisitor
	_currentMethod as Method
	_typeMappings as Hash
	_primitiveMappings as Hash
	
	override def Initialize(context as CompilerContext):
		super(context)		
		initializeTypeMappings()

	def Run():
		if len(Errors) > 0:
			return
		Visit(CompileUnit)
		
	def initializeTypeMappings():
		_typeMappings = {
			typeSystem.ObjectType: "java/lang/Object",
			Null.Default: "java/lang/Object",
			typeSystem.StringType: "java/lang/String",
			typeSystem.ICallableType: "Boojay/Lang/Callable",
			typeSystem.TypeType: "java/lang/Class",<commit_msg>minor formatting<commit_after>namespace Boojay.Compilation.Steps

import System.IO

import Boo.Lang.Compiler
import Boo.Lang.Compiler.Ast
import Boo.Lang.Compiler.Steps
import Boo.Lang.Compiler.TypeSystem
import Boo.Lang.Compiler.TypeSystem.Internal

import Boo.Lang.PatternMatching

import org.objectweb.asm
import org.objectweb.asm.Type

import Boojay.Compilation.TypeSystem

class BoojayEmitter(AbstractVisitorCompilerStep):
		
	_classVisitor as ClassVisitor
	_code as MethodVisitor
	_currentMethod as Method
	_typeMappings as Hash
	_primitiveMappings as Hash
	
	override def Initialize(context as CompilerContext):
		super(context)		
		initializeTypeMappings()
		
	def Run():
		if len(Errors) > 0:
			return
		Visit(CompileUnit)
		
	def initializeTypeMappings():
		_typeMappings = {
			typeSystem.ObjectType: "java/lang/Object",
			Null.Default: "java/lang/Object",
			typeSystem.StringType: "java/lang/String",
			typeSystem.ICallableType: "Boojay/Lang/Callable",
			typeSystem.TypeType: "java/lang/Class",
{'fraction_non_alphanumeric': 0.08824987605354487, 'fraction_numerical': 0.0009915716410510659, 'mean_word_length': 5.115151515151515, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1081918', 'n_tokens_mistral': 704, 'n_tokens_neox': 642, 'n_words': 132}