function prepare(oInfo, i) {
			var fnFormatter = oInfo.formatter,
				oModel,
				sModelName = oInfo.model;

			if (oInfo.path && oInfo.path.indexOf(">") > 0) {
				sModelName = oInfo.path.slice(0, oInfo.path.indexOf(">"));
			}
			oModel = oWithControl.getModel(sModelName);

			if (fnFormatter && fnFormatter.requiresIContext === true) {
				fnFormatter = oInfo.formatter
					= fnFormatter.bind(null, createContextInterface(oWithControl, mSettings, i));
			}
			// wrap formatter only if there is a formatter and async is allowed and either
			// - we use $$valueAsPromise ourselves, or
			// - we are top-level and at least one child has used $$valueAsPromise
			if (fnFormatter && bAsync
					&& (oModel && oModel.$$valueAsPromise || i === undefined && bValueAsPromise)) {
				oInfo.formatter = function () {
					var that = this;
					return SyncPromise.all(arguments).then(function (aArguments) {
						return fnFormatter.apply(that, aArguments);
					});
				};
				oInfo.formatter.textFragments = fnFormatter.textFragments;
			}
			oInfo.mode = BindingMode.OneTime;
			oInfo.parameters = oInfo.parameters || {};
			oInfo.parameters.scope = oScope;
			if (bAsync && oModel && oModel.$$valueAsPromise) { // opt-in to async behavior
				bValueAsPromise = oInfo.parameters.$$valueAsPromise = true;
			}
		}
/*
		 * Prepares the given binding info or part of it; makes it "one time" and binds its
		 * formatter function (if opted in) to an interface object.
		 *
		 * @param {object} oInfo
		 *   a binding info or a part of it
		 * @param {number} i
		 *   index of binding info's part (if applicable)
		 */
Prepares the given binding info or part of it; makes it "one time" and binds its
formatter function (if opted in) to an interface object.

@param {object} oInfo
a binding info or a part of it
@param {number} i
index of binding info's part (if applicable)
Prepares the given binding info or part of it ; makes it " one time " and binds its formatter function ( if opted in ) to an interface object . @param { object } oInfo a binding info or a part of it @param { number } i index of binding info ' s part ( if applicable )
function prepare(oInfo, i) {
			var fnFormatter = oInfo.formatter,
				oModel,
				sModelName = oInfo.model;
			if (oInfo.path && oInfo.path.indexOf(">") > 0) {
				sModelName = oInfo.path.slice(0, oInfo.path.indexOf(">"));
			}
			oModel = oWithControl.getModel(sModelName);
			if (fnFormatter && fnFormatter.requiresIContext === true) {
				fnFormatter = oInfo.formatter
					= fnFormatter.bind(null, createContextInterface(oWithControl, mSettings, i));
			}
			if (fnFormatter && bAsync
					&& (oModel && oModel.$$valueAsPromise || i === undefined && bValueAsPromise)) {
				oInfo.formatter = function () {
					var that = this;
					return SyncPromise.all(arguments).then(function (aArguments) {
						return fnFormatter.apply(that, aArguments);
					});
				};
				oInfo.formatter.textFragments = fnFormatter.textFragments;
			}
			oInfo.mode = BindingMode.OneTime;
			oInfo.parameters = oInfo.parameters || {};
			oInfo.parameters.scope = oScope;
			if (bAsync && oModel && oModel.$$valueAsPromise) { 
				bValueAsPromise = oInfo.parameters.$$valueAsPromise = true;
			}
		}
function prepare ( oInfo , i ) { var fnFormatter = oInfo . formatter , oModel , sModelName = oInfo . model ; if ( oInfo . path && oInfo . path . indexOf ( ">" ) > 0 ) { sModelName = oInfo . path . slice ( 0 , oInfo . path . indexOf ( ">" ) ) ; } oModel = oWithControl . getModel ( sModelName ) ; if ( fnFormatter && fnFormatter . requiresIContext === true ) { fnFormatter = oInfo . formatter = fnFormatter . bind ( null , createContextInterface ( oWithControl , mSettings , i ) ) ; } if ( fnFormatter && bAsync && ( oModel && oModel . $$valueAsPromise || i === undefined && bValueAsPromise ) ) { oInfo . formatter = function ( ) { var that = this ; return SyncPromise . all ( arguments ) . then ( function ( aArguments ) { return fnFormatter . apply ( that , aArguments ) ; } ) ; } ; oInfo . formatter . textFragments = fnFormatter . textFragments ; } oInfo . mode = BindingMode . OneTime ; oInfo . parameters = oInfo . parameters || { } ; oInfo . parameters . scope = oScope ; if ( bAsync && oModel && oModel . $$valueAsPromise ) { bValueAsPromise = oInfo . parameters . $$valueAsPromise = true ; } }
Prepares the given binding info or part of it; makes it "one time" and binds its
 formatter function (if opted in) to an interface object.
Prepares the given binding info or part of it ; makes it " one time " and binds its formatter function ( if opted in ) to an interface object .
// wrap formatter only if there is a formatter and async is allowed and either // - we use $$valueAsPromise ourselves, or // - we are top-level and at least one child has used $$valueAsPromise // opt-in to async behavior