001/* 002 * SPDX-FileCopyrightText: none 003 * SPDX-License-Identifier: CC0-1.0 004 */ 005 006package dev.metaschema.core.metapath; 007 008import dev.metaschema.core.configuration.AbstractConfigurationFeature; 009import edu.umd.cs.findbugs.annotations.NonNull; 010 011/** 012 * Provides a mechanism to configure Metapath evaluation settings. 013 * 014 * @param <V> 015 * the feature value Java type 016 */ 017public final class MetapathEvaluationFeature<V> 018 extends AbstractConfigurationFeature<V> { 019 /** 020 * If enabled, evaluate <a href= 021 * "https://www.w3.org/TR/xpath-31/#id-filter-expression">predicates</a>, 022 * otherwise skip evaluating them. 023 */ 024 @NonNull 025 public static final MetapathEvaluationFeature<Boolean> METAPATH_EVALUATE_PREDICATES 026 = new MetapathEvaluationFeature<>("evaluate-predicates", Boolean.class, true); 027 028 private MetapathEvaluationFeature( 029 @NonNull String name, 030 @NonNull Class<V> valueClass, 031 @NonNull V defaultValue) { 032 super(name, valueClass, defaultValue); 033 } 034}