<commit_before>package edu.mit.streamjit.impl.compiler.types;

import static com.google.common.base.Preconditions.*;
import com.google.common.primitives.Primitives;
import edu.mit.streamjit.impl.compiler.Klass;

/**
 * A wrapper type.  (Note that java.lang.Void is not considered a wrapper type
 * because void is not considered a primitive type.)
 * @author <NAME> <<EMAIL>>
 * @since 4/9/2013
 */
public final class WrapperType extends ReferenceType {
	WrapperType(Klass klass) {
		super(klass);
		Class<?> backer = klass.getBackingClass();
		checkArgument(backer != null && backer.isPrimitive() && !backer.equals(Void.class),
				"not a wrapper type: %s", klass);
	}

	public PrimitiveType unwrap() {
		//Wrapper types are always backed by Classes.
		return getTypeFactory().getPrimitiveType(getModule().getKlass(Primitives.unwrap(getKlass().getBackingClass())));
	}
}
<commit_msg>WrapperTypes are wrappers, not primitives<commit_after>package edu.mit.streamjit.impl.compiler.types;

import static com.google.common.base.Preconditions.*;
import com.google.common.primitives.Primitives;
import edu.mit.streamjit.impl.compiler.Klass;

/**
 * A wrapper type.  (Note that java.lang.Void is not considered a wrapper type
 * because void is not considered a primitive type.)
 * @author <NAME> <<EMAIL>>
 * @since 4/9/2013
 */
public final class WrapperType extends ReferenceType {
	WrapperType(Klass klass) {
		super(klass);
		Class<?> backer = klass.getBackingClass();
		checkArgument(backer != null && Primitives.isWrapperType(backer) && !backer.equals(Void.class),
				"not a wrapper type: %s", klass);
	}

	public PrimitiveType unwrap() {
		//Wrapper types are always backed by Classes.
		return getTypeFactory().getPrimitiveType(getModule().getKlass(Primitives.unwrap(getKlass().getBackingClass())));
	}
}

{'fraction_non_alphanumeric': 0.13108407079646017, 'fraction_numerical': 0.00663716814159292, 'mean_word_length': 4.97029702970297, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, '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': '3017061', 'n_tokens_mistral': 593, 'n_tokens_neox': 575, 'n_words': 140}