Simple library to create primitive collections. Using template files to generate them. Project for self teaching.
Go to file
Speiger 4ae353a0bd Updated Release and added direct downloads 2021-08-12 15:03:05 +02:00
gradle/wrapper Pushing Wrapper 2021-06-22 17:34:53 +02:00
src New Features and bugfixes. 2021-08-12 14:31:29 +02:00
.classpath Map Tests & BugFixes. 2021-04-22 23:02:04 +02:00
.gitattributes Removed the double foldering and started some seriouse work. 2020-11-11 21:33:59 +01:00
.gitignore Pushing Wrapper 2021-06-22 17:34:53 +02:00
.project Map Tests & BugFixes. 2021-04-22 23:02:04 +02:00
Changelog.md New Features and bugfixes. 2021-08-12 14:31:29 +02:00
LICENSE Updated License & Readme 2021-01-28 21:39:58 +01:00
README.md Updated Release and added direct downloads 2021-08-12 15:03:05 +02:00
RuleSheet.md New Content patch getting big progress on base and progress on lists. 2020-11-16 02:55:33 +01:00
build.gradle Updated Release and added direct downloads 2021-08-12 15:03:05 +02:00
gradlew Removed the double foldering and started some seriouse work. 2020-11-11 21:33:59 +01:00
gradlew.bat Removed the double foldering and started some seriouse work. 2020-11-11 21:33:59 +01:00
settings.gradle Removed the double foldering and started some seriouse work. 2020-11-11 21:33:59 +01:00

README.md

Primitive-Collections

This is a Simple Primitive Collections Library i started as a hobby Project.
It is based on Java's Collection Library and FastUtil.
But its focus is a different one.

Main Features:

  • ArrayLists
  • HashSet/Map (Linked & HashControl)
  • TreeSet/Map (RB & AVL)
  • EnumMap
  • Immutable Maps/Lists/Sets
  • Priority Queue
  • Streams
  • SplitIterators
  • Iterators

Notes about Versions

Any 0.x.0 version (Minor) can be reason for massive changes including API.
To ensure that problems can be dealt with even if it is breaking the current API.
Any breaking changes will be Documented (once 1.0 is released)

How to install

Using Gradle:

repositories {
    maven {
        url = "https://maven.speiger.com/repository/main"
    }
}
dependencies {
	compile 'de.speiger:Primitive-Collections:0.3.3'
}

Direct:

| Version 	| Jar                                                                                                                          	| Sources                                                                                                                              	| Java Doc                                                                                                                             	|
|---------	|------------------------------------------------------------------------------------------------------------------------------	|--------------------------------------------------------------------------------------------------------------------------------------	|--------------------------------------------------------------------------------------------------------------------------------------	|
| 0.3.3   	| [Download](https://maven.speiger.com/repository/main/de/speiger/Primitive-Collections/0.3.3/Primitive-Collections-0.3.3.jar) 	| [Download](https://maven.speiger.com/repository/main/de/speiger/Primitive-Collections/0.3.3/Primitive-Collections-0.3.3-sources.jar) 	| [Download](https://maven.speiger.com/repository/main/de/speiger/Primitive-Collections/0.3.3/Primitive-Collections-0.3.3-javadoc.jar) 	|

Contributing

If you want to contribute.
This project is created using gradle and java and my Template Library only. Nothing extra.
If you setup gradle the library will be downloaded automatically.

Where is everything stored?

  • Variables and ClassNames are define here
  • Templates are stored here
  • Tests can be found here

Please if you want to contribute follow the Rule-Sheet. It keeps everything in line.

How to Build

The SourceCode can be generated via:
/gradlew.bat generateSource

to build the jar:
/gradlew.bat build
do not combine the commands because they can not be executed at the same time.

Current Down Sides (Random order)

  • Testing for Sub Maps/Sets/Lists are only in a very basic way tested
  • Documentation is only present at the lowest level for most cases and needs a typo fixing.
  • AVLTreeSet/Map Polling (pollFirst/LastKey) is not working properly. It does not crash just the order is not maintained for whatever reason. Will be fixed very soon.