pro.projo.octodecuples.Factory Maven / Gradle / Ivy
The newest version!
// //
// Copyright 2017 - 2023 Mirko Raner //
// //
// Licensed under the Apache License, Version 2.0 (the "License"); //
// you may not use this file except in compliance with the License. //
// You may obtain a copy of the License at //
// //
// http://www.apache.org/licenses/LICENSE-2.0 //
// //
// Unless required by applicable law or agreed to in writing, software //
// distributed under the License is distributed on an "AS IS" BASIS, //
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. //
// See the License for the specific language governing permissions and //
// limitations under the License. //
// //
package pro.projo.octodecuples;
/**/
/**
*
* This interface defines Projo's generic factory for objects with 18 fields.
*
* @param <_Artifact_> the artifact type generated by the factory
* @param <_First_> the type of the first field
* @param <_Second_> the type of the second field
* @param <_Third_> the type of the third field
* @param <_Fourth_> the type of the fourth field
* @param <_Fifth_> the type of the fifth field
* @param <_Sixth_> the type of the sixth field
* @param <_Seventh_> the type of the seventh field
* @param <_Eighth_> the type of the eighth field
* @param <_Ninth_> the type of the ninth field
* @param <_Tenth_> the type of the tenth field
* @param <_Eleventh_> the type of the eleventh field
* @param <_Twelfth_> the type of the twelfth field
* @param <_Thirteenth_> the type of the thirteenth field
* @param <_Fourteenth_> the type of the fourteenth field
* @param <_Fifteenth_> the type of the fifteenth field
* @param <_Sixteenth_> the type of the sixteenth field
* @param <_Seventeenth_> the type of the seventeenth field
* @param <_Eighteenth_> the type of the eighteenth field
*
* @author Mirko Raner
**/
/**/
public interface Factory<_Artifact_, _First_, _Second_, _Third_, _Fourth_, _Fifth_, _Sixth_, _Seventh_, _Eighth_, _Ninth_, _Tenth_, _Eleventh_, _Twelfth_, _Thirteenth_, _Fourteenth_, _Fifteenth_, _Sixteenth_, _Seventeenth_, _Eighteenth_> extends pro.projo.Factory
{
/**/
/**
* Creates a new Projo object, using the arguments to initialize the object's fields.
*
* @param first the first parameter
* @param second the second parameter
* @param third the third parameter
* @param fourth the fourth parameter
* @param fifth the fifth parameter
* @param sixth the sixth parameter
* @param seventh the seventh parameter
* @param eighth the eighth parameter
* @param ninth the ninth parameter
* @param tenth the tenth parameter
* @param eleventh the eleventh parameter
* @param twelfth the twelfth parameter
* @param thirteenth the thirteenth parameter
* @param fourteenth the fourteenth parameter
* @param fifteenth the fifteenth parameter
* @param sixteenth the sixteenth parameter
* @param seventeenth the seventeenth parameter
* @param eighteenth the eighteenth parameter
* @return a new Projo object
**/
_Artifact_ create(_First_ first, _Second_ second, _Third_ third, _Fourth_ fourth, _Fifth_ fifth, _Sixth_ sixth, _Seventh_ seventh, _Eighth_ eighth, _Ninth_ ninth, _Tenth_ tenth, _Eleventh_ eleventh, _Twelfth_ twelfth, _Thirteenth_ thirteenth, _Fourteenth_ fourteenth, _Fifteenth_ fifteenth, _Sixteenth_ sixteenth, _Seventeenth_ seventeenth, _Eighteenth_ eighteenth);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy