Commit Graph

199 Commits (f9429f6dd9d49d0880bce3ce0869975741d93182)

Author SHA1 Message Date
David Hall d89a9df2a5 With so many breaking changes, I decided to roll the version to 3.0.0. 2019-08-27 12:42:33 -06:00
David Hall 3a1d6548b3 Added BOOL and BOOLEAN types 2019-08-27 09:05:48 -06:00
David Hall 4a25d8dc25 Added comparison operators and methods 2019-08-27 08:41:39 -06:00
David Hall 15ffe13254 Added ability to get CharSet and resize by setting Capacity property. 2019-08-23 11:52:14 -06:00
David Hall 75a70f2319 Fixed bug due to invalid externs 2019-08-22 13:56:16 -06:00
David Hall 9d4758ed5d Added Write methods to SafeMemoryHandleExt. Added size checking from InteropExtension methods. Added offset param to ToStructure. 2019-08-21 10:18:07 -06:00
David Hall c3521b7742 MAJOR BREAKING CHANGEs:
1) Obsoleted Vanara.Extensions.InteropExtensions.StructureToPtr for a name change to MarshalToPtr for consistency.
2) Added parameter to all methods reading memory that allows developer to indicate size of allocated memory they read from.
3) Enabled the ability to read/write enum values from memory in all extension methods.
4) Added Write methods for writing to memory
2019-08-17 21:13:57 -06:00
David Hall fb62105f42 Added TypeConverter, MinValue/MaxValue fields, comparison operators, and fixed inconsistent handling of Int32 conversions. 2019-08-17 16:07:02 -06:00
David Hall 246b53dd69 Fixed bug in CanSet method 2019-08-17 16:05:22 -06:00
David Hall ee72119e36 MAJOR BREAKING CHANGE: Moved all extension methods for System.Object to Vanara.Extensions.Reflection namespace to avoid Intellisense overloads with methods that will be rarely used. 2019-08-17 14:42:49 -06:00
David Hall a23ac2d587 Fixed bug when handling enums 2019-08-15 00:16:05 -07:00
David Hall 602f847bd8 Fixed bug in CanGet method when value supported more than one type. 2019-08-15 00:15:43 -07:00
David Hall ae0251ded9 Changed structure input parameter to CreateFromStructure to 'in' for memory classes 2019-07-27 13:05:10 -06:00
David Hall d72cca74cb Fixed documentation error 2019-07-27 12:55:59 -06:00
David Hall 683280a945 Updated constructors of all SafeAllocatedMemory derivatives to use SizeT instead of int for the size parameter. 2019-07-27 12:48:33 -06:00
David Hall 42630dd833 BREAKING CHANGE: Changed type of SafeAllocatedMemoryHandle.Size property from int to SizeT so that it more easily converts to different types used in memory size functions. 2019-07-25 19:46:45 -06:00
David Hall 893efef823 Moved into InteropServices 2019-07-25 18:53:21 -06:00
David Hall 9b42ed675c Moved SizeT into Vanara.Core 2019-07-25 18:51:11 -06:00
David Hall 499f10c996 Changed validation check to ensure boundary is a power of 2. 2019-07-25 12:01:46 -06:00
David Hall 6235cd776e Added SafeAllocatedMemoryHandle derived class for managed aligned memory buffers. 2019-07-25 10:49:18 -06:00
David Hall 0fef11ebb1 Made SafeMemoryHandle conversion to IntPtr implicit instead of explicit. In practice, I have found this to be a constant conversion need. 2019-07-25 10:48:43 -06:00
David Hall b471f81899 Fixed bug in new code 2019-07-24 15:23:22 -06:00
David Hall b4dde29d90 Simplified and extended GetCorrespondingTypes methods 2019-07-24 12:55:23 -06:00
David Hall 277bddcf58 Removed redundant code from CheckHasValue and used IsValid 2019-07-23 13:52:32 -06:00
David Hall 5b4853db7e Added GetStaticFieldValue method 2019-07-19 17:32:05 -06:00
David Hall ceff4504f0 Changed to BitHelper broke too much so reverted. 2019-07-16 07:43:10 -06:00
David Hall 6eb0aa354d Added ToInt64, TimeSpan.ToFileTimeStruct, and ToTimeSpan methods for FILETIME and modified ToString method so that it will display a TimeSpan value if negative. 2019-07-13 21:39:13 -06:00
David Hall 379e23ccb9 Added conversion methods To and ToEnum for fast conversions. 2019-07-13 16:27:46 -06:00
David Hall 64b2911d5e BREAKING CHANGE: Changed CorrepsondingAction to CorrespondingAction due to misspelling. 2019-07-12 09:49:54 -06:00
David Hall 1996fadd69 Made GetBit and GetBits extension methods 2019-07-10 11:27:04 -06:00
David Hall 025e6529de Added CreateOrDefault method to get best default value for a structure. Added InvokeStaticMethod to allow for calling a static method generically. 2019-07-09 09:23:41 -06:00
David Hall 63c67871aa Added DebuggerDisplayAttribute for all classes to show pointer and string values. 2019-07-08 11:37:32 -06:00
David Hall a360548771 Added Equals override and new GuidPtr structure. 2019-07-03 14:44:16 -06:00
David Hall c374ab2cff Added ability to read nullable structure, fixed bug in WriteObject 2019-07-03 14:43:47 -06:00
David Hall 4905441377 Added pointer value in front of string with optional params to remove. 2019-07-03 14:42:51 -06:00
David Hall 7ce7b96209 * Derived SafeCoTaskMemString from base class SafeMemString derived from SafeMemHandle<T>.
* BREAKING CHANGE: Removed CharCapacity and made Capacity show char allocation. Size (from parent) shows byte capacity. Mimics StringBuilder.
2019-06-25 17:10:57 -06:00
David Hall badc08c7e5 Extended StructureToPtr so that it works with `enum` values. 2019-06-17 13:44:46 -06:00
David Hall ea5e8d6c2b Consolidated code and fixed bug in ToFileTimeStruct that mixed up UTC conversion. 2019-06-15 13:50:10 -06:00
David Hall 422ab0a7dd Updated project files for 2.8.11 release 2019-06-07 20:42:41 -06:00
David Hall 3415cac1dc Added implicit operator from IntPtr 2019-06-07 10:59:03 -06:00
David Hall 1c25f88529 Added Write method to set string into memory 2019-06-07 10:58:30 -06:00
David Hall d191144a51 Change implicit string conversion to get 'null' for IntPtr.Zero 2019-06-04 16:01:43 -06:00
David Hall f59831bc2c Updated project files for 2.3.10 2019-06-04 12:18:56 -06:00
David Hall 0b83c0a914 Updated projects for version 2.3.9 2019-05-25 19:47:54 -06:00
David Hall da3d9d27b9 Updated project information for 2.3.8 2019-05-13 14:55:44 -06:00
David Hall cdcdffca4b Added static Instance field and caused 0's to be trimmed off end of Format response. 2019-05-08 19:02:31 -06:00
David Hall 6627c016f2 Added Get/SetFieldValue extension methods 2019-05-08 12:50:26 -06:00
David Hall f738792e11 Better null handling 2019-05-08 12:50:01 -06:00
David Hall 1f6d4f4384 Added .NET Stream wrapper for COM IStream instances. 2019-05-08 09:25:15 -06:00
David Hall 51c888f4da Added FromNullable static creator 2019-05-08 09:24:39 -06:00