protected ASTExplicitConstructorInvocation(
      /* generated by template ast.ConstructorParametersDeclaration*/
      String tHIS,
      java8._ast.ASTExpressionName expressionName,
      java8._ast.ASTPrimary primary,
      String dOT,
      java8._ast.ASTTypeArguments typeArguments,
      String sUPER,
      String lPAREN,
      java8._ast.ASTArgumentListX argumentListX,
      String rPAREN,
      String sEMI)

        /* generated by template ast.ConstructorAttributesSetter*/
      {
    setTHIS(tHIS);
    setExpressionName(expressionName);
    setPrimary(primary);
    setDOT(dOT);
    setTypeArguments(typeArguments);
    setSUPER(sUPER);
    setLPAREN(lPAREN);
    setArgumentListX(argumentListX);
    setRPAREN(rPAREN);
    setSEMI(sEMI);
  }
  public void remove_Child(de.monticore.ast.ASTNode child) {

    /* generated by template ast.ErrorIfNull*/
    Log.errorIfNull(child, "0xA7006_325 Parameter 'child' must not be null.");

    /* generated by template ast.additionalmethods.RemoveChild*/

    if (getExpressionName().isPresent() && getExpressionName().get() == child) {
      setExpressionName(null);
    }
    if (getPrimary().isPresent() && getPrimary().get() == child) {
      setPrimary(null);
    }
    if (getTypeArguments().isPresent() && getTypeArguments().get() == child) {
      setTypeArguments(null);
    }
    if (getArgumentListX().isPresent() && getArgumentListX().get() == child) {
      setArgumentListX(null);
    }
  }