• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lloydmeta / enumeratum
100%
master: 89%

Build:
Build:
LAST BUILD BRANCH: dependency-notes
DEFAULT BRANCH: master
Repo Added 05 Dec 2014 01:30PM UTC
Files 64
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH optimise/entryname
branch: optimise/entryname
CHANGE BRANCH
x
Reset
  • optimise/entryname
  • 1.0.1
  • 1.1.0
  • 1.2.0
  • 1.2.2
  • 1.2.3
  • 1.3.0
  • 1.3.1
  • 1.3.6
  • 1.5.14-release
  • 1.6
  • benchmark/enumset-enummap-comp
  • benchmarks/more-enumset-comps
  • build-fix/fix-quill-build-and-bump-scalajs
  • build/2.13-rc1
  • build/improve-build
  • build/kill-upickle
  • build/make-Eval-work-with-PR-SNAPSHOTs
  • build/subproject-aggregation
  • build/versioning
  • bump/play-versions
  • chores/cleanup
  • ci/parallelise
  • cleanup/build
  • consideration/trait-enumentry
  • corev1.5.7
  • corev1.5.7_libs
  • corev1.5.8
  • docs/sbt-doctest
  • enumeartum-reactivemongo-bson_v1.5.14
  • enumeratum-Catsv1.5.16
  • enumeratum-argonautv1.5.12
  • enumeratum-cats_v1.5.15
  • enumeratum-circe-v1.5.14
  • enumeratum-circe1.5.19
  • enumeratum-circe_1.5.17
  • enumeratum-circev1.5.15
  • enumeratum-circev1.5.21
  • enumeratum-circev1.5.22
  • enumeratum-circev1.5.5
  • enumeratum-circev1.5.8
  • enumeratum-doobiev1.5.16
  • enumeratum-doobiev1.5.17
  • enumeratum-json4sv1.5.10
  • enumeratum-playv1.5.17
  • enumeratum-quill_1.5.14
  • enumeratum-quillv1.5.15
  • enumeratum-reactive-mongo-bsonv1.5.15
  • enumeratum-reactivemongo-1.6.2
  • enumeratum-scalacheck_1.5.13
  • enumeratum-slickv1.5.16
  • enumeratum-v1.5.14
  • enumeratumCirce-1.5.20
  • enumeratumPlayv1.5.15
  • feature/2.10-valueenums
  • feature/2.12
  • feature/add-argonaut-2.12
  • feature/add-dependencies-impact
  • feature/add-in-to-valueenums
  • feature/benchmark-entryname
  • feature/better-companion-materialiser-error
  • feature/better-value-enum-error-message
  • feature/bounds-checking
  • feature/bump-scoverage
  • feature/case-insensitive
  • feature/case-transforms-tests
  • feature/circe-2.13.0-M5
  • feature/coveralls-bumping
  • feature/empty-values
  • feature/enumeratum-play
  • feature/immutable-collections
  • feature/jmh-benchmarks
  • feature/json-rename
  • feature/more-benchmarks
  • feature/more-slick-docs
  • feature/more-value-enum-types
  • feature/more-work-for-2_13
  • feature/move-enum-materializer
  • feature/name-typeclass
  • feature/neo-scala-fmt
  • feature/nested-valueenums
  • feature/optimise-indexOf
  • feature/ordinals
  • feature/play-2.5
  • feature/play-json-scalajs
  • feature/play-sird-support+snakify-optimisation
  • feature/play2.4
  • feature/reactivemongo-2.12
  • feature/readme-restructuring
  • feature/readme-update
  • feature/scala-js-attempt-2
  • feature/scaladocs-publishing
  • feature/stringvalueenum
  • feature/upgrade-sbt
  • feature/upickle-update
  • feature/use-name
  • feature/value-enums
  • feature/valueenum-random-tests
  • feature/valueenums-default-args
  • fix/issue-96
  • fix/macros-inner-values
  • fix/upickle-serialisation
  • fix/valueenum-map-name
  • fix/valueenum-scaladoc
  • fix/valueenums-private-construtors
  • issue135_slick-lloydmeta-patch
  • libs-corev1.5.8
  • macros-v1.5.9
  • macrov1.5.7
  • master
  • play-1.6.3-release
  • reactivemongo-json4s-v1.5.9
  • reactivemongo-refactoring
  • refactor/reactive-mongo
  • release-2021-02-26
  • release/1.5.11
  • release/1.5.13
  • release/1.6
  • release/1.6.1
  • release/core-1.5.7
  • release/core-1.5.8
  • release/corev1.5.15
  • release/enumeratum-circe-1.5.15
  • release/enumeratum-quill
  • release/macro-1.5.8
  • release/macro-1.5.9
  • release/macros-1.5.7
  • release/reactivemongo-1.0
  • release/scalacheck-1.5.15
  • release/sjs-play-argonaut
  • tests/json4s-doctests
  • touchup/post-2.13
  • travis/try-openjdk8
  • update/circe-0.7.0
  • upgrade/20160906-versions
  • upgrade/play-2.6.0-M
  • upgrade/sbt-1.0
  • upgrade/sbt-and-coveralls
  • v0.0.4
  • v0.0.5
  • v1.0.0
  • v1.3.2
  • v1.3.4
  • v1.3.6
  • v1.3.7
  • v1.4.0
  • v1.4.1
  • v1.4.10
  • v1.4.11
  • v1.4.12
  • v1.4.13
  • v1.4.14
  • v1.4.15
  • v1.4.16
  • v1.4.17
  • v1.4.18
  • v1.4.2
  • v1.4.3
  • v1.4.4
  • v1.4.5
  • v1.4.6
  • v1.4.7
  • v1.4.8
  • v1.4.9
  • v1.5.0
  • v1.5.1
  • v1.5.11
  • v1.5.12
  • v1.5.13
  • v1.5.14-enumeratum-cats
  • v1.5.18-enumeratum-circe
  • v1.5.2
  • v1.5.3
  • v1.5.4
  • v1.5.6
  • v1.5.8
  • v1.6.1
  • valueenum-nested-restriction

pending completion
718

push

travis-ci

lloydmeta
Closes #105: Optimise entryName in stackable traits

Instead of using abstract override, just override and refer to a stable
private lazy val that refers to super.entryName. Lazy is used because
we don't want to create and store the String if users don't need to
serialise their enums.

Performance comparison (spoiler, in stacked case ~500x faster)

Before:
[info] Benchmark                         Mode  Cnt     Score    Error  Units
[info] EnumBenchmarks.entryNameStacked   avgt   30  1499.862 ± 34.588  ns/op
[info] EnumBenchmarks.entryNameStandard  avgt   30     4.461 ±  0.087  ns/op

After:
[info] Benchmark                         Mode  Cnt  Score   Error  Units
[info] EnumBenchmarks.entryNameStacked   avgt   30  3.180 ± 0.040  ns/op
[info] EnumBenchmarks.entryNameStandard  avgt   30  3.185 ± 0.075  ns/op

402 of 402 relevant lines covered (100.0%)

1.0 hits per line

Relevant lines Covered
Build:
Build:
402 RELEVANT LINES 402 COVERED LINES
1.0 HITS PER LINE
Source Files on optimise/entryname
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
718 optimise/entryname Closes #105: Optimise entryName in stackable traits Instead of using abstract override, just override and refer to a stable private lazy val that refers to super.entryName. Lazy is used because we don't want to create and store the String if user... push 05 Feb 2017 05:35AM UTC lloydmeta travis-ci pending completion  
See All Builds (1127)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc