@SuppressWarnings("unchecked")
	public <T, V> void expandInto(Bindings bindings, Binding<T> binding,
			V value) {
		macroForValueOf((Class<? super V>) value.getClass()).expand(value,
				binding, bindings);
	}
@SuppressWarnings("unchecked")
	public <T, V> void expandInto(Bindings bindings, Binding<T> binding,
			V value) {
		macroForValueOf((Class<? super V>) value.getClass()).expand(value,
				binding, bindings);
	}
@ SuppressWarnings ( "unchecked" ) public < T , V > void expandInto ( Bindings bindings , Binding < T > binding , V value ) { macroForValueOf ( ( Class < ? super V > ) value . getClass ( ) ) . expand ( value , binding , bindings ) ; }
A generic version of {@link Macro#expand(Object, Binding, Bindings)} that
uses the matching predefined {@link Macro} for the actual type of the
value and expands it.

@param binding The usually incomplete binding to expand (and add to
{@link Bindings})
@param value Non-null value to expand via matching {@link Macro}

@throws InconsistentBinding In case no {@link Macro} had been declared
for the type of value argument
A generic version of { @link Macro#expand ( Object Binding Bindings ) } that uses the matching predefined { @link Macro } for the actual type of the value and expands it .