![JAR search and dependency download from the Maven repository](/logo.png)
net.yetamine.lang.introspective.Introspection Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of net.yetamine.lang Show documentation
Show all versions of net.yetamine.lang Show documentation
Small extensions for the core Java language libraries.
The newest version!
/*
* Copyright 2016 Yetamine
*
* 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 net.yetamine.lang.introspective;
import java.util.Collections;
import java.util.Map;
/**
* Indicates support for retrieving additional information of an instance to aid
* debugging, logging and other kinds of introspective processing.
*/
public interface Introspection {
/**
* Provides the set of elements describing features or capabilities of this
* instance.
*
*
* The default implementation returns an empty map. Implementations are
* supposed to override this method and provide actual values. The result
* must be thread-safe and it may be immutable.
*
* @return the introspective description; never {@code null}, but possibly
* unmodifiable
*/
default Map, ?> introspect() {
return Collections.emptyMap();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy