/// <summary> /// Returns the FREArray as a C# bool[]. /// </summary> /// <returns></returns> public bool[] AsBoolArray() { var arr = new bool[Length]; var len = Length; if (len <= 0) { return(arr); } for (uint i = 0; i < len; i++) { var itm = At(i); if (itm.Type() != FreObjectTypeSharp.Boolean) { return(arr); } arr.SetValue(FreSharpHelper.GetAsBool(itm), i); } return(arr); }
/// <summary> /// Converts a FREObject to a C# bool /// </summary> /// <param name="inFre"></param> /// <returns></returns> public static bool AsBool(this FREObject inFre) => FreSharpHelper.GetAsBool(inFre);
/// <summary> /// /// </summary> /// <returns></returns> public ArrayList GetAsArrayList() { var al = new ArrayList(); var len = Length; if (len <= 0) { return(al); } for (uint i = 0; i < len; i++) { var itm = At(i); var type = itm.Type(); switch (type) { case FreObjectTypeSharp.String: al.Add(FreSharpHelper.GetAsString(itm)); break; case FreObjectTypeSharp.Bytearray: var ba = new FreByteArraySharp(itm); ba.Acquire(); var baTarget = new byte[ba.Length]; ba.Bytes.CopyTo(baTarget, 0); al.Add(baTarget); ba.Release(); break; case FreObjectTypeSharp.Array: case FreObjectTypeSharp.Vector: var arrFre = new FREArray(itm); al.Add(arrFre.GetAsArrayList()); break; case FreObjectTypeSharp.Bitmapdata: var bmdFre = new FreBitmapDataSharp(itm); al.Add(bmdFre.GetAsBitmap()); break; case FreObjectTypeSharp.Boolean: al.Add(FreSharpHelper.GetAsBool(itm)); break; case FreObjectTypeSharp.Null: break; case FreObjectTypeSharp.Int: al.Add(FreSharpHelper.GetAsInt(itm)); break; case FreObjectTypeSharp.Object: case FreObjectTypeSharp.Class: al.Add(FreSharpHelper.GetAsDictionary(itm)); break; case FreObjectTypeSharp.Number: al.Add(FreSharpHelper.GetAsDouble(itm)); break; case FreObjectTypeSharp.Rectangle: var rectFre = new FreRectangleSharp(itm); al.Add(rectFre.Value); break; default: throw new ArgumentOutOfRangeException(); } } return(al); }
/// <summary> /// Converts a FREObject to a C# bool. /// </summary> /// <param name="freObject"></param> /// <returns></returns> public static bool AsBool(this FREObject freObject) => FreSharpHelper.GetAsBool(freObject);
/// <summary> /// /// </summary> /// <param name="inFre"></param> /// <returns></returns> public static bool AsBool(this FreObjectSharp inFre) => FreSharpHelper.GetAsBool(inFre.RawValue);