UExtension is a basic type extension library for .Net and Unity projects. It integrates a large number of commonly used, efficient and convenient extension methods, which helps to greatly improve development efficiency.
🐧 Official QQ group: 1070645638
- Provide a large number of .Net native types and extension methods of Unity native types.
- Optimize the user experience of native types and improve development efficiency.
- No other dependent libraries.
- The API is concise and easy to use, and the name is clear.
- Take into account ease of use and high performance as much as possible, and avoid GC as much as possible.
- Most of the code files can be used independently, you can only use the required parts or delete the unnecessary parts as needed.
└─ Extension
├─ CSharp
│ └─ Script
│ ├─ Collection
│ │ ├─ ArrayExtension.cs
│ │ ├─ ArrayListExtension.cs
│ │ ├─ HashSetExtension.cs
│ │ ├─ ICollectionExtension.cs
│ │ ├─ IDictionaryExtension.cs
│ │ ├─ IEnumerableExtension.cs
│ │ ├─ IEnumeratorExtension.cs
│ │ ├─ IListExtension.cs
│ │ └─ ListExtension.cs
│ ├─ Compare
│ │ ├─ ComparerUtil.cs
│ │ ├─ ComparisonUtil.cs
│ │ └─ IComparableExtension.cs
│ ├─ IO
│ │ ├─ FileInfoExtension.cs
│ │ └─ StreamExtension.cs
│ ├─ Net
│ │ └─ SocketExtension.cs
│ ├─ Reflection
│ │ ├─ AssemblyExtension.cs
│ │ ├─ MemberInfoExtension.cs
│ │ ├─ MethodInfoExtension.cs
│ │ └─ TypeExtension.cs
│ ├─ Util
│ │ ├─ ActionExtension.cs
│ │ ├─ AwaiterExtension.cs
│ │ ├─ ChainStyleExtension.cs
│ │ ├─ FuncExtension.cs
│ │ ├─ ObjectExtension.cs
│ │ ├─ StringBuilderExtension.cs
│ │ ├─ TExtension.cs
│ │ └─ ValidateExtension.cs
│ └─ Value
│ ├─ BooleanExtension.cs
│ ├─ ByteExtension.cs
│ ├─ CharExtension.cs
│ ├─ DateTimeExtension.cs
│ ├─ DateTimeOffsetExtension.cs
│ ├─ DecimalExtension.cs
│ ├─ DoubleExtension.cs
│ ├─ EnumExtension.cs
│ ├─ FloatExtension.cs
│ ├─ IntExtension.cs
│ ├─ LongExtension.cs
│ └─ StringExtension.cs
├─ LinqReplece
│ └─ Script
│ ├─ ArrayExtension.cs
│ ├─ IEnumerableExtension.cs
│ └─ IListExtension.cs
└─ Unity
├─ Editor
│ └─ Script
│ ├─ Component
│ │ └─ AnimatorExtension.cs
│ ├─ GenericMenuExtension.cs
│ └─ SerializedPropertyExtension.cs
└─ Runtime
└─ Script
├─ Class
│ ├─ AnimationCurveExtension.cs
│ └─ GradientExtension.cs
├─ Component
│ ├─ AnimationExtension.cs
│ ├─ AnimatorExtension.cs
│ ├─ CameraExtension.cs
│ ├─ LineRendererExtension.cs
│ ├─ MaskableGraphicExtension.cs
│ ├─ MeshFilterExtension.cs
│ ├─ NavMeshAgentExtension.cs
│ ├─ ParticleSystemExtension.cs
│ ├─ PolygonCollider2DExtension.cs
│ ├─ RendererExtension.cs
│ ├─ Rigidbody2DExtension.cs
│ ├─ RigidbodyExtension.cs
│ ├─ SpriteRendererExtension.cs
│ └─ TilemapExtension.cs
├─ Core
│ ├─ BehaviourExtension.cs
│ ├─ ComponentExtension.cs
│ ├─ GameObjectExtension.cs
│ ├─ MonoBehaviourExtension.cs
│ ├─ TransformExtension.cs
│ └─ UnityObjectExtension.cs
├─ Object
│ ├─ MaterialExtension.cs
│ ├─ ShaderExtension.cs
│ └─ Texture2DExtension.cs
├─ Struct
│ ├─ BoundsExtension.cs
│ ├─ BoundsIntExtension.cs
│ ├─ ColorExtension.cs
│ ├─ LayerMaskExtension.cs
│ ├─ MatrixExtension.cs
│ ├─ MinMaxCurveExtension.cs
│ ├─ QuaternionExtension.cs
│ ├─ RangeExtension.cs
│ ├─ Ray2DExtensions.cs
│ ├─ RayExtension.cs
│ ├─ RectExtension.cs
│ ├─ RectIntExtension.cs
│ ├─ RectOffsetExtension.cs
│ ├─ ResolutionExtension.cs
│ ├─ Vector2Extension.cs
│ ├─ Vector2IntExtension.cs
│ ├─ Vector3Extension.cs
│ ├─ Vector3IntExtension.cs
│ └─ Vector4Extension.cs
└─ UI
├─ ButtonExtension.cs
├─ InputFiledExtension.cs
└─ RectTransformExtension.cs
Copy the entire project folder into the UnityProject/Assets/Plugins/
directory.
- The method of the warehouse is implemented by the author himself or collected from the Internet and other open source projects during the development process for many years, and has been accumulated so far.
- This project is only recommended for learning and use. The author cannot guarantee the functional reliability, result accuracy and actual performance of all interfaces. Although the author has actually used this project in multiple commercial projects, please fully test it yourself if you need it for commercial use.
- All interfaces have tried to improve the readability of signatures, and the implementation logic of most interfaces is very simple. In addition, the characteristics of the warehouse may lead to frequent updates, and the author has limited energy, so no interface documents are provided.
- Due to the author's own needs, the project contains a large number of replacement implementation interfaces that overlap with Linq, and will be split separately as an optional part later.
- If you find problems in use, improve suggestions, or want to add new functions, you are welcome to submit a PR.