From 89d06b77d349b1920810502eb4187bbecb8c5972 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Fri, 6 Dec 2024 08:29:44 +0100 Subject: [PATCH] Move English version into /en subdirectory --- build.gradle | 2 +- .../asciidoc/{ => en}/getting_started.adoc | 0 .../asciidoc/{ => en}/images/binarytree1.png | Bin .../asciidoc/{ => en}/images/binarytree2.png | Bin .../{ => en}/images/collections-seq.png | Bin .../{ => en}/images/collections-set-map.png | Bin src/docs/asciidoc/{ => en}/images/list1.png | Bin src/docs/asciidoc/{ => en}/images/list2.png | Bin src/docs/asciidoc/{ => en}/images/queue1.png | Bin src/docs/asciidoc/{ => en}/images/queue2.png | Bin .../{ => en}/images/vavr-collections.png | Bin .../{ => en}/images/vavr-overview.png | Bin src/docs/asciidoc/{ => en}/index.adoc | 2 +- src/docs/asciidoc/{ => en}/introduction.adoc | 0 src/docs/asciidoc/{ => en}/license.adoc | 0 .../asciidoc/{ => en}/pattern_matching.adoc | 0 src/docs/asciidoc/{ => en}/usage_guide.adoc | 52 +++++++++--------- 17 files changed, 28 insertions(+), 28 deletions(-) rename src/docs/asciidoc/{ => en}/getting_started.adoc (100%) rename src/docs/asciidoc/{ => en}/images/binarytree1.png (100%) rename src/docs/asciidoc/{ => en}/images/binarytree2.png (100%) rename src/docs/asciidoc/{ => en}/images/collections-seq.png (100%) rename src/docs/asciidoc/{ => en}/images/collections-set-map.png (100%) rename src/docs/asciidoc/{ => en}/images/list1.png (100%) rename src/docs/asciidoc/{ => en}/images/list2.png (100%) rename src/docs/asciidoc/{ => en}/images/queue1.png (100%) rename src/docs/asciidoc/{ => en}/images/queue2.png (100%) rename src/docs/asciidoc/{ => en}/images/vavr-collections.png (100%) rename src/docs/asciidoc/{ => en}/images/vavr-overview.png (100%) rename src/docs/asciidoc/{ => en}/index.adoc (86%) rename src/docs/asciidoc/{ => en}/introduction.adoc (100%) rename src/docs/asciidoc/{ => en}/license.adoc (100%) rename src/docs/asciidoc/{ => en}/pattern_matching.adoc (100%) rename src/docs/asciidoc/{ => en}/usage_guide.adoc (89%) diff --git a/build.gradle b/build.gradle index e0aa75f..ce96769 100644 --- a/build.gradle +++ b/build.gradle @@ -55,7 +55,7 @@ idea { } asciidoctor { - sourceDir = file('src/docs/asciidoc') + sourceDir = file('src/docs/asciidoc/en') outputDir = file("$buildDir/docs/asciidoc") options backend: 'html5' diff --git a/src/docs/asciidoc/getting_started.adoc b/src/docs/asciidoc/en/getting_started.adoc similarity index 100% rename from src/docs/asciidoc/getting_started.adoc rename to src/docs/asciidoc/en/getting_started.adoc diff --git a/src/docs/asciidoc/images/binarytree1.png b/src/docs/asciidoc/en/images/binarytree1.png similarity index 100% rename from src/docs/asciidoc/images/binarytree1.png rename to src/docs/asciidoc/en/images/binarytree1.png diff --git a/src/docs/asciidoc/images/binarytree2.png b/src/docs/asciidoc/en/images/binarytree2.png similarity index 100% rename from src/docs/asciidoc/images/binarytree2.png rename to src/docs/asciidoc/en/images/binarytree2.png diff --git a/src/docs/asciidoc/images/collections-seq.png b/src/docs/asciidoc/en/images/collections-seq.png similarity index 100% rename from src/docs/asciidoc/images/collections-seq.png rename to src/docs/asciidoc/en/images/collections-seq.png diff --git a/src/docs/asciidoc/images/collections-set-map.png b/src/docs/asciidoc/en/images/collections-set-map.png similarity index 100% rename from src/docs/asciidoc/images/collections-set-map.png rename to src/docs/asciidoc/en/images/collections-set-map.png diff --git a/src/docs/asciidoc/images/list1.png b/src/docs/asciidoc/en/images/list1.png similarity index 100% rename from src/docs/asciidoc/images/list1.png rename to src/docs/asciidoc/en/images/list1.png diff --git a/src/docs/asciidoc/images/list2.png b/src/docs/asciidoc/en/images/list2.png similarity index 100% rename from src/docs/asciidoc/images/list2.png rename to src/docs/asciidoc/en/images/list2.png diff --git a/src/docs/asciidoc/images/queue1.png b/src/docs/asciidoc/en/images/queue1.png similarity index 100% rename from src/docs/asciidoc/images/queue1.png rename to src/docs/asciidoc/en/images/queue1.png diff --git a/src/docs/asciidoc/images/queue2.png b/src/docs/asciidoc/en/images/queue2.png similarity index 100% rename from src/docs/asciidoc/images/queue2.png rename to src/docs/asciidoc/en/images/queue2.png diff --git a/src/docs/asciidoc/images/vavr-collections.png b/src/docs/asciidoc/en/images/vavr-collections.png similarity index 100% rename from src/docs/asciidoc/images/vavr-collections.png rename to src/docs/asciidoc/en/images/vavr-collections.png diff --git a/src/docs/asciidoc/images/vavr-overview.png b/src/docs/asciidoc/en/images/vavr-overview.png similarity index 100% rename from src/docs/asciidoc/images/vavr-overview.png rename to src/docs/asciidoc/en/images/vavr-overview.png diff --git a/src/docs/asciidoc/index.adoc b/src/docs/asciidoc/en/index.adoc similarity index 86% rename from src/docs/asciidoc/index.adoc rename to src/docs/asciidoc/en/index.adoc index 7cd8099..ae7d4ba 100644 --- a/src/docs/asciidoc/index.adoc +++ b/src/docs/asciidoc/en/index.adoc @@ -1,5 +1,5 @@ = Vavr User Guide -Daniel Dietrich, Robert Winkler +Daniel Dietrich, Robert Winkler, Grzegorz Piwowarek :toc: left :toclevels: 3 :source-highlighter: coderay diff --git a/src/docs/asciidoc/introduction.adoc b/src/docs/asciidoc/en/introduction.adoc similarity index 100% rename from src/docs/asciidoc/introduction.adoc rename to src/docs/asciidoc/en/introduction.adoc diff --git a/src/docs/asciidoc/license.adoc b/src/docs/asciidoc/en/license.adoc similarity index 100% rename from src/docs/asciidoc/license.adoc rename to src/docs/asciidoc/en/license.adoc diff --git a/src/docs/asciidoc/pattern_matching.adoc b/src/docs/asciidoc/en/pattern_matching.adoc similarity index 100% rename from src/docs/asciidoc/pattern_matching.adoc rename to src/docs/asciidoc/en/pattern_matching.adoc diff --git a/src/docs/asciidoc/usage_guide.adoc b/src/docs/asciidoc/en/usage_guide.adoc similarity index 89% rename from src/docs/asciidoc/usage_guide.adoc rename to src/docs/asciidoc/en/usage_guide.adoc index fd9e9df..b3f8f93 100644 --- a/src/docs/asciidoc/usage_guide.adoc +++ b/src/docs/asciidoc/en/usage_guide.adoc @@ -15,7 +15,7 @@ Here is an example of how to create a tuple holding a String and an Integer: [source,java,indent=0] ---- -include::../../test/java/io/vavr/TupleDemo.java[tags=createTuple] +include::../../../test/java/io/vavr/TupleDemo.java[tags=createTuple] ---- <1> A tuple is created via the static factory method `Tuple.of()` <2> Get the 1st element of this tuple. @@ -27,7 +27,7 @@ The component-wise map evaluates a function per element in the tuple, returning [source,java,indent=0] ---- -include::../../test/java/io/vavr/TupleDemo.java[tags=bimapTuple] +include::../../../test/java/io/vavr/TupleDemo.java[tags=bimapTuple] ---- ==== Map a tuple using one mapper @@ -36,7 +36,7 @@ It is also possible to map a tuple using one mapping function. [source,java,indent=0] ---- -include::../../test/java/io/vavr/TupleDemo.java[tags=mapTuple] +include::../../../test/java/io/vavr/TupleDemo.java[tags=mapTuple] ---- ==== Transform a tuple @@ -45,7 +45,7 @@ Transform creates a new type based on the tuple's contents. [source,java,indent=0] ---- -include::../../test/java/io/vavr/TupleDemo.java[tags=transformTuple] +include::../../../test/java/io/vavr/TupleDemo.java[tags=transformTuple] ---- === Functions @@ -55,21 +55,21 @@ The following lambda expression creates a function to sum two integers: [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithLambda] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithLambda] ---- This is a shorthand for the following anonymous class definition: [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithAnonymousClass] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithAnonymousClass] ---- You can also use the static factory method `Function3.of(...)` to a create a function from any method reference. [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithFactoryMethod] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=createFunctionWithFactoryMethod] ---- In fact Vavr functional interfaces are Java 8 functional interfaces on steroids. They also provide features like: @@ -85,14 +85,14 @@ You can use either `andThen`: [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=composeFunctions1] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=composeFunctions1] ---- or `compose`: [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=composeFunctions2] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=composeFunctions2] ---- ==== Lifting @@ -102,14 +102,14 @@ The following method `divide` is a partial function that only accepts non-zero d [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=partialDivideFunction] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=partialDivideFunction] ---- We use `lift` to turn `divide` into a total function that is defined for all inputs. [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=liftedDivideFunction] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=liftedDivideFunction] ---- <1> A lifted function returns `None` instead of throwing an exception, if the function is invoked with disallowed input values. @@ -119,7 +119,7 @@ The following method `sum` is a partial function that only accepts positive inpu [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=partialFunctionExample] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=partialFunctionExample] ---- <1> The function `sum` throws an `IllegalArgumentException` for negative input values. @@ -127,7 +127,7 @@ We may lift the `sum` method by providing the methods reference. [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=liftMethodReference] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=liftMethodReference] ---- <1> The lifted function catches the `IllegalArgumentException` and maps it to `None`. @@ -136,14 +136,14 @@ Partial application allows you to derive a new function from an existing one by [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=partialApplicationFunction] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=partialApplicationFunction] ---- <1> The first parameter `a` is fixed to the value 2. This can be demonstrated by fixing the first three parameters of a `Function5`, resulting in a `Function2`. [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=partialApplicationFunctionArity5] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=partialApplicationFunctionArity5] ---- <1> The `a`, `b` and `c` parameters are fixed to the values 2, 3 and 1 respectively. @@ -156,7 +156,7 @@ When a `Function2` is _curried_, the result is indistinguishable from the _parti [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=curryingFunction] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=curryingFunction] ---- <1> The first parameter `a` is fixed to the value 2. @@ -164,7 +164,7 @@ You might notice that, apart from the use of `.curried()`, this code is identica [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=curryingFunctionArity3] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=curryingFunctionArity3] ---- <1> Note the presence of additional functions in the parameters. <2> Further calls to `apply` returns another `Function1`, apart from the final call. @@ -175,7 +175,7 @@ The following example calculates a random number on the first invocation and ret [source,java,indent=0] ---- -include::../../test/java/io/vavr/FunctionsDemo.java[tags=memoizedFunction] +include::../../../test/java/io/vavr/FunctionsDemo.java[tags=memoizedFunction] ---- === Values @@ -197,7 +197,7 @@ Using `Optional`, this scenario is valid. [source,java,indent=0] ---- -include::../../test/java/io/vavr/OptionDemo.java[tags=javaOptionalWithMappedNull] +include::../../../test/java/io/vavr/OptionDemo.java[tags=javaOptionalWithMappedNull] ---- <1> The option is `Some("foo")` <2> The resulting option becomes empty here @@ -206,7 +206,7 @@ Using Vavr's `Option`, the same scenario will result in a `NullPointerException` [source,java,indent=0] ---- -include::../../test/java/io/vavr/OptionDemo.java[tags=vavrOptionWithMappedNull] +include::../../../test/java/io/vavr/OptionDemo.java[tags=vavrOptionWithMappedNull] ---- <1> The option is `Some("foo")` <2> The resulting option is `Some(null)` @@ -218,7 +218,7 @@ This may seem to make `Option` useless, but it actually forces you to pay attent [source,java,indent=0] ---- -include::../../test/java/io/vavr/OptionDemo.java[tags=flatMapNullParameter] +include::../../../test/java/io/vavr/OptionDemo.java[tags=flatMapNullParameter] ---- <1> The option is `Some("foo")` <2> The resulting option is `Some(null)` @@ -228,7 +228,7 @@ Alternatively, move the `.flatMap` to be co-located with the the possibly `null` [source,java,indent=0] ---- -include::../../test/java/io/vavr/OptionDemo.java[tags=mapOptionParameter] +include::../../../test/java/io/vavr/OptionDemo.java[tags=mapOptionParameter] ---- <1> The option is `Some("foo")` <2> The resulting option is `None` @@ -263,7 +263,7 @@ Lazy is a monadic container type which represents a lazy evaluated value. Compar [source,java,indent=0] ---- -include::../../test/java/io/vavr/LazyDemo.java[tags=createLazy] +include::../../../test/java/io/vavr/LazyDemo.java[tags=createLazy] ---- You may also create a real lazy value (works only with interfaces): @@ -310,7 +310,7 @@ Example: We get the fields 'name' and 'age' from a web form and want to create e [source,java,indent=0] ---- -include::../../test/java/io/vavr/ValidationDemo.java[tags=validatePerson] +include::../../../test/java/io/vavr/ValidationDemo.java[tags=validatePerson] ---- A valid value is contained in a `Validation.Valid` instance, a list of validation errors is contained in a `Validation.Invalid` instance. @@ -318,13 +318,13 @@ A valid value is contained in a `Validation.Valid` instance, a list of validatio The following validator is used to combine different validation results to one `Validation` instance. ---- -include::../../test/java/io/vavr/ValidationDemo.java[tags=personValidator] +include::../../../test/java/io/vavr/ValidationDemo.java[tags=personValidator] ---- If the validation succeeds, i.e. the input data is valid, then an instance of `Person` is created of the given fields `name` and `age`. ---- -include::../../test/java/io/vavr/ValidationDemo.java[tags=person] +include::../../../test/java/io/vavr/ValidationDemo.java[tags=person] ---- === Collections