This repository has been archived by the owner on Oct 30, 2023. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[GIRAPH-1041] Generate primitive type specific code
Summary: - Use FreeMarker library to generate primitive type specific code. Initially generating three sets of files: {TYPE}Consumer, {TYPE}TypeOps and W{TYPE}ArrayList Right now generation happens manually, and generated files are being committed. In the future we can move those to a separate project, and have them generated when maven is compiling and deploying. Additionally to generation change, BasicArrayList is renamed to WArrayList and directly extends fastutil implementation, to now serves two purposes: - generic handling of efficient arrays through TypeOps - extended fastutil class - to make it writtable, to add useful Java8 methods, or anything else we can think of. Since we are just extending it, and there is no efficiency penalty, we can always use WLongArrayList instead of LongArrayList. There is additional WReusableLongArrayList, which when readFields is called, doesn't size it to exact size, but reuses the old length. Test Plan: mvn clean install There are no changes in logic in this diff. Will send a small separate diff with some examples of what is now simpler. Reviewers: sergey.edunov, dionysis.logothetis, spupyrev, maja.kabiljo Differential Revision: https://reviews.facebook.net/D52515
- Loading branch information
Igor Kabiljo
committed
Apr 12, 2016
1 parent
bac93fa
commit 77ae12e
Showing
51 changed files
with
3,681 additions
and
1,052 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.