public interface  io.sundr.adapter.api.Adapter extends java.lang.Object
{
public abstract java.util.function.Function getTypeAdapterFunction();
public abstract java.util.function.Function getReferenceAdapterFunction();
public abstract java.util.function.Function getMethodAdapterFunction();
public abstract java.util.function.Function getPropertyAdapterFunction();
public io.sundr.model.TypeDef adaptType(java.lang.Object)
{
io.sundr.adapter.api.Adapter v;
java.lang.Object v, v;
java.util.function.Function v;
v := @this: io.sundr.adapter.api.Adapter;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<io.sundr.adapter.api.Adapter: java.util.function.Function getTypeAdapterFunction()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
return v;
}
public io.sundr.model.Method adaptMethod(java.lang.Object)
{
io.sundr.adapter.api.Adapter v;
java.lang.Object v, v;
java.util.function.Function v;
v := @this: io.sundr.adapter.api.Adapter;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<io.sundr.adapter.api.Adapter: java.util.function.Function getMethodAdapterFunction()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
return v;
}
public io.sundr.model.Property adaptProperty(java.lang.Object)
{
io.sundr.adapter.api.Adapter v;
java.lang.Object v, v;
java.util.function.Function v;
v := @this: io.sundr.adapter.api.Adapter;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<io.sundr.adapter.api.Adapter: java.util.function.Function getPropertyAdapterFunction()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
return v;
}
public io.sundr.model.TypeRef adaptReference(java.lang.Object)
{
io.sundr.adapter.api.Adapter v;
java.lang.Object v, v;
java.util.function.Function v;
v := @this: io.sundr.adapter.api.Adapter;
v := @parameter: java.lang.Object;
v = interfaceinvoke v.<io.sundr.adapter.api.Adapter: java.util.function.Function getReferenceAdapterFunction()>();
v = interfaceinvoke v.<java.util.function.Function: java.lang.Object apply(java.lang.Object)>(v);
return v;
}
}