Updated License & Readme
This commit is contained in:
		
							parent
							
								
									f60a287868
								
							
						
					
					
						commit
						2804aafd22
					
				
							
								
								
									
										4
									
								
								LICENSE
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								LICENSE
									
									
									
									
									
								
							@ -1,6 +1,6 @@
 | 
				
			|||||||
Apache License
 | 
					Apache License
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Version 2.0, January 2004
 | 
					Version 2.0, January 2021
 | 
				
			||||||
 | 
					
 | 
				
			||||||
http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION,
 | 
					http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION,
 | 
				
			||||||
AND DISTRIBUTION
 | 
					AND DISTRIBUTION
 | 
				
			||||||
@ -187,7 +187,7 @@ a file or class name and description of purpose be included on the same "printed
 | 
				
			|||||||
page" as the copyright notice for easier identification within third-party
 | 
					page" as the copyright notice for easier identification within third-party
 | 
				
			||||||
archives.
 | 
					archives.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Copyright [yyyy] [name of copyright owner]
 | 
					Copyright 2021 Speiger
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Licensed under the Apache License, Version 2.0 (the "License");
 | 
					Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										42
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								README.md
									
									
									
									
									
								
							@ -1,32 +1,22 @@
 | 
				
			|||||||
# Primitive-Collections (To be Renamed)
 | 
					# Primitive-Collections (To be Renamed)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
This is a Simple Primitive Collections Library i started as a hobby Project.
 | 
					This is a Simple Primitive Collections Library i started as a hobby Project.
 | 
				
			||||||
It's basis is of FastUtil and Java's Collection Library
 | 
					It is based on Java's Collection Library and FastUtil.
 | 
				
			||||||
But both lib's have a lot of problems, and in FastUtils case foundation seem changes to be no longer possible.
 | 
					But its focus is a different one.
 | 
				
			||||||
So this project was started.
 | 
					 | 
				
			||||||
With a Rule-Sheet, and also hopefully more Test-Coverage.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
Currently Cons against FastUtil (will/might change over time).
 | 
					Main Features:
 | 
				
			||||||
- No Maps, this is next on the todolist.
 | 
					ArraysList, HashSet/Map (Linked & HashControl), TreeSet/Map (RB & AVL), Priority Queue.
 | 
				
			||||||
- No Singletons,
 | 
					 | 
				
			||||||
- No BigLists/Sets/Maps
 | 
					 | 
				
			||||||
- No Custom Spliterator support.
 | 
					 | 
				
			||||||
- No Reference Collections.
 | 
					 | 
				
			||||||
- Some implementations are slower due to not including all Micro-optimizations (this might not change)
 | 
					 | 
				
			||||||
- Not as Specific Case Testing compared to FastUtil
 | 
					 | 
				
			||||||
- No Java Serialization implemented
 | 
					 | 
				
			||||||
- Code Generator is right now not finalized and no automatic setup exists as of this moment.
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
Pros against FastUtil
 | 
					# Guide
 | 
				
			||||||
- A Cleaner implementation of Collections that do exists: NavigableSet (Exists), PriorityQueues are Save-able outside of java Serialization and a lot of others.
 | 
					 | 
				
			||||||
- More Consistency with features, not leaving a lot of holes in implementations. (Anything outside of HashMaps/Lists have massive holes)
 | 
					 | 
				
			||||||
- Abstract Tests to allow more coverage on tests and allow quicker implementation on tests on new Implementations.
 | 
					 | 
				
			||||||
- A lot better packaging where each types have their own packages to also make it easier to use the library. (lists/sets/collections/queues/utils)
 | 
					 | 
				
			||||||
- Due to package name choice: This Library imports do not overshadow java imports. (Anything after s is overshadowed)
 | 
					 | 
				
			||||||
- No Linux Environment necessary to generate the sourcecode if you want to work on it. All done with Java and or Gradle.
 | 
					 | 
				
			||||||
- A lot of extra functions that become useful in some cases, like: ITrimmable, IArray, extractElements(from, to), moveToFirst/Last, PriorityQueue iterator. Better Synchronization wrappers that expose useful interfaces.
 | 
					 | 
				
			||||||
- More Control how internals work thanks to SanityChecks
 | 
					 | 
				
			||||||
- Support to some extend of a Java Specific Feature: Non-TypeSepcific Collection Non Delete functions. (any method that used Object as Parameter instead of Generic)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
This Library also includes my own MergeSort Algorithm that does not need to duplicate the input array.
 | 
					Project is currently not buildable due to certain design flaws that are being redone,
 | 
				
			||||||
It is a bit slower depending on the size, but is a stable sort that does not require to duplicate an array
 | 
					but the SourceCode can be already generated via: /gradlew.bat generateSource
 | 
				
			||||||
 | 
					which will generate all the files and they shouldn't generate any errors.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Current Problem:
 | 
				
			||||||
 | 
					EnumMaps use sun.misc package.
 | 
				
			||||||
 | 
					Some methods are ambiguous and need to be adjusted.
 | 
				
			||||||
 | 
					Some overhauls or missing implementations have to be added. (A couple passes)
 | 
				
			||||||
 | 
					But technically Lists/Sets/PriorityQueues are fully usable, Maps are untested and just recently added.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Documentation & Tests are going to be added very soon.
 | 
				
			||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user