Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
public static function getItemIndex(array: Object, item: Object): int
{
var result: int = -1;
if (array is Array)
array = new ArrayCollection(array as Array);
if (array is ArrayCollection)
{
var collection: ArrayCollection = ArrayCollection(array);
result = collection.getItemIndex(item);
/* if (result == -1 && item is IEquals)
{
for (var index: int = 0; index < collection.length; index++)
{
var obj: Object = collection.getItemAt(index);
if (obj == item || (obj is IEquals && IEquals(item).equals(IEquals(obj))))
{
result = index;
break;
}
}
}*/
}
return result;
}
Душа настойчиво требовала Яву, но под рукой ничего подходящего не оказалось.
Для тех, кто не в курсе, это очередная попытка авторов супербиблиотеки изобрести Array.indexOf.
[Embed(source = "/assets/video_preview/VideoSlideThumb.png")]
public static const VIDEO_PREVIEW: Class;
public static function get videoPreviewBD(): BitmapData
{
var image : Bitmap = new VIDEO_PREVIEW ();
return image.bitmapData.clone();
}
Когда-то давно бытовала такая пословица: What Intel giveth Microsoft taketh away. Но похоже что переходное красное знамя подхватили и в других организациях по-меньше.
public class MathAndGeometryUtils
{
public static function roundToHalf(value:Number):Number
{
var multiplied:int = Math.round(value * 10);
if (multiplied / 5 == Math.round(multiplied / 5))
{
return multiplied / 10;
}
else
{
var noComma:Number = Math.floor(multiplied / 10) * 10;
var divaider:int = multiplied - noComma;
if (divaider >= 3 && divaider <= 7)
return (noComma + 5) / 10;
else
return Math.round(value);
}
}
}
На сколько я смог понять задумку, человеку хотелось чтобы функция возвращала значения типа 0, 0.5, 1, 1.5 и т.д. и вот он придумал такое самобытное решение.