/paperparcel

Auto-generate the fastest possible Parcelable implementations for Java and Kotlin

Primary LanguageJavaApache License 2.0Apache-2.0

PaperParcel

Build Status

PaperParcel is an annotation processor that automatically generates the CREATOR and writeToParcel(...) implementations for you when writing Parcelable objects. PaperParcel fully supports both Java and Kotlin (including Kotlin Data Classes). Additionally, PaperParcel supports Google's AutoValue via an AutoValue Extension.

For more information please see the website.

Note: JetBrains have released Parcelize as an "experimental" feature of Kotlin. As of Kotlin 1.1.60 I personally have found it stable enough to use in production. If you don't require some of the more advanced features of PaperParcel (e.g. type adapters), I recommend looking into Parcelize before this library.

Download

Java:

dependencies {
  compile 'nz.bradcampbell:paperparcel:2.0.8'
  annotationProcessor 'nz.bradcampbell:paperparcel-compiler:2.0.8'
}

Kotlin:

apply plugin: 'kotlin-kapt'

dependencies {
  compile 'nz.bradcampbell:paperparcel:2.0.8'
  compile 'nz.bradcampbell:paperparcel-kotlin:2.0.8' // Optional
  kapt 'nz.bradcampbell:paperparcel-compiler:2.0.8'
}

Development snapshots are available on JFrog OSS Artifactory.

License

Copyright 2016 Bradley Campbell.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.