<commit_before>package jltools.ext.jl.ast;

import jltools.ast.*;
import jltools.types.*;
import jltools.visit.*;
import jltools.util.*;

/**
 * An <code>AmbReceiver</code> is an ambiguous AST node composed of
 * dot-separated list of identifiers that must resolve to a receiver.
 */
public class AmbReceiver_c extends AmbPrefix_c implements AmbReceiver
{
	protected Type type;

    public AmbReceiver_c(Ext ext, Position pos, Prefix prefix, String name) {
	super(ext, pos, prefix, name);
    }

	public Type type() {
		return this.type;
	}

	public AmbReceiver type(Type type) {
                AmbReceiver_c n = (AmbReceiver_c) copy();
		n.type = type;
                return n;
	}

    public Node buildTypes_(TypeBuilder tb) throws SemanticException {
        return type(tb.typeSystem().unknownType(position()));
    }

    /** Disambiguate the receiver. */
    public Node disambiguateOverride_(AmbiguityRemover ar)
	throws SemanticException {

	Node n = super.disambiguateOverride_(ar);

	if (n == null) {
	    return null;
	}

	if (n instanceof Receiver) {
	    return n;
	}

	throw new SemanticException("Could not find type, field, or " +
	    "local variable \"" + name + "\".", position());
    }

    /** Disambiguate the receiver. */
    public Node disambiguate_(AmbiguityRemover ar)
	throws SemanticException {

	Node n = super.disambiguate_(ar);

	if (n instanceof Receiver) {
	    return n;
	}

	throw new SemanticException("Could not find type, field, or " +
	    "local variable \"" + name + "\".", position());
    }
}<commit_msg>Removed unnecessary disambiguateOverride method.<commit_after>package jltools.ext.jl.ast;

import jltools.ast.*;
import jltools.types.*;
import jltools.visit.*;
import jltools.util.*;

/**
 * An <code>AmbReceiver</code> is an ambiguous AST node composed of
 * dot-separated list of identifiers that must resolve to a receiver.
 */
public class AmbReceiver_c extends AmbPrefix_c implements AmbReceiver
{
	protected Type type;

    public AmbReceiver_c(Ext ext, Position pos, Prefix prefix, String name) {
	super(ext, pos, prefix, name);
    }

	public Type type() {
		return this.type;
	}

	public AmbReceiver type(Type type) {
                AmbReceiver_c n = (AmbReceiver_c) copy();
		n.type = type;
                return n;
	}

    public Node buildTypes_(TypeBuilder tb) throws SemanticException {
        return type(tb.typeSystem().unknownType(position()));
    }

    /** Disambiguate the receiver. */
    public Node disambiguate_(AmbiguityRemover ar) throws SemanticException {
	Node n = super.disambiguate_(ar);

	if (n instanceof Receiver) {
	    return n;
	}

	throw new SemanticException("Could not find type, field, or " +
	    "local variable \"" + name + "\".", position());
    }
}
{'fraction_non_alphanumeric': 0.11272727272727273, 'fraction_numerical': 0.0, 'mean_word_length': 3.3254716981132075, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, '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': '6120501', 'n_tokens_mistral': 866, 'n_tokens_neox': 812, 'n_words': 252}