package de.dhbwstuttgart.syntaxtree.statement;
import java.util.ArrayList;
import java.util.List;

import de.dhbwstuttgart.syntaxtree.type.RefType;
import de.dhbwstuttgart.syntaxtree.type.RefTypeOrTPHOrWildcardOrGeneric;
import de.dhbwstuttgart.typeinference.assumptions.TypeInferenceBlockInformation;
import de.dhbwstuttgart.typeinference.constraints.ConstraintSet;
import org.antlr.v4.runtime.Token;
import sun.reflect.generics.reflectiveObjects.NotImplementedException;


public class NewClass extends Statement
{
    public NewClass(int offset,int variableLength)
    {
        super(null,null);
    }

    private ArgumentList arglist;
	private boolean isStatement = false;

    /**
     *
     * @param newClass Typ der Instanzierten Klasse
     * @param args Argumente mit denen der New-Call aufgerufen wurde
     * @param start
     */
    public NewClass(RefType newClass, ArgumentList args, Token start) {
        super(newClass, start);
        this.arglist = args;
    }


    public ArgumentList getArgumentList()
    {
       return this.arglist;
    }


    @Override
    public ConstraintSet getConstraints(TypeInferenceBlockInformation info) {
        throw new NotImplementedException();
    }
}
