= MapStruct {mapstructVersion} Reference Guide :revdate: {docdate} :toc: right :sectanchors: :source-highlighter: coderay :Author: Gunnar Morling, Andreas Gudian, Sjaak Derksen, Filip Hrisafov and the MapStruct community :processor-dir: ../../../../processor :processor-ap-test: {processor-dir}/src/test/java/org/mapstruct/ap/test :processor-ap-main: {processor-dir}/src/main/java/org/mapstruct/ap :integration-tests-dir: ../../../../integrationtest [[Preface]] == Preface This is the reference documentation of MapStruct, an annotation processor for generating type-safe, performant and dependency-free bean mapping code. This guide covers all the functionality provided by MapStruct. In case this guide doesn't answer all your questions just join the MapStruct https://github.com/mapstruct/mapstruct/discussions[GitHub Discussions] to get help. You found a typo or other error in this guide? Please let us know by opening an issue in the https://github.com/mapstruct/mapstruct[MapStruct GitHub repository], or, better yet, help the community and send a pull request for fixing it! This work is licensed under the http://creativecommons.org/licenses/by-sa/4.0/[Creative Commons Attribution-ShareAlike 4.0 International License]. :numbered: include::chapter-1-introduction.asciidoc[] include::chapter-2-set-up.asciidoc[] include::chapter-3-defining-a-mapper.asciidoc[] include::chapter-4-retrieving-a-mapper.asciidoc[] include::chapter-5-data-type-conversions.asciidoc[] include::chapter-6-mapping-collections.asciidoc[] include::chapter-7-mapping-streams.asciidoc[] include::chapter-8-mapping-values.asciidoc[] include::chapter-9-object-factories.asciidoc[] include::chapter-10-advanced-mapping-options.asciidoc[] include::chapter-11-reusing-mapping-configurations.asciidoc[] include::chapter-12-customizing-mapping.asciidoc[] include::chapter-13-using-mapstruct-spi.asciidoc[] include::chapter-14-third-party-api-integration.asciidoc[]