1 /* 2 * SPDX-FileCopyrightText: none 3 * SPDX-License-Identifier: CC0-1.0 4 */ 5 6 package gov.nist.secauto.metaschema.core.model; 7 8 import edu.umd.cs.findbugs.annotations.NonNull; 9 10 public interface IModelElementVisitable { 11 /** 12 * A visitor callback. 13 * 14 * @param <CONTEXT> 15 * the type of the context parameter 16 * @param <RESULT> 17 * the type of the visitor result 18 * @param visitor 19 * the calling visitor 20 * @param context 21 * a parameter used to pass contextual information between visitors 22 * @return the visitor result 23 */ 24 <CONTEXT, RESULT> RESULT accept(@NonNull IModelElementVisitor<CONTEXT, RESULT> visitor, CONTEXT context); 25 }