Skip to content

Commit

Permalink
#18: Provides package-info.java files for each package
Browse files Browse the repository at this point in the history
Task-Url: #18
  • Loading branch information
Boereck committed Jul 23, 2018
1 parent 90a41e6 commit 8a701c6
Show file tree
Hide file tree
Showing 9 changed files with 107 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
/**
* This package contains classes providing extension methods for JDK classes
* related to concurrent programming and some new functionality for scheduling
* concurrently executed pieces of code.<br>
* <br>
* The {@link de.fhg.fokus.xtensions.concurrent.CompletableFutureExtensions
* CompletableFutureExtensions} class provides extension methods for the JDK
* class {@link java.util.concurrent.CompletableFuture CompletableFuture}.<br>
* <br>
* The class {@link de.fhg.fokus.xtensions.concurrent.AsyncCompute AsyncCompute}
* provides extension methods on the JDK classes
* {@link java.util.concurrent.Executor Executor} and
* {@link java.util.concurrent.ScheduledExecutorService
* ScheduledExecutorService} that basically dispatch work on the executors and
* return {@code CompletableFuture}s being completed with the result of the
* computation. Note that there are similar methods provided in the
* {@code CompletableFuture} class, but the methods provided in
* {@code AsyncCompute} are more natural to use with Xtend.<br>
* <br>
* The class {@link de.fhg.fokus.xtensions.concurrent.SchedulingUtil
* SchedulingUtil} provides methods to schedule tasks for later or re-occurring
* execution. Some of these methods can be used as extension methods on
* {@link java.util.concurrent.ScheduledExecutorService
* ScheduledExecutorService}.
*/
package de.fhg.fokus.xtensions.concurrent;
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/**
* This package holds classes providing extension methods for the
* {@code java.time} API.<br>
* <br>
* Currently only extension methods for the {@link java.time.Duration Duration}
* class is provided in the
* {@link de.fhg.fokus.xtensions.datetime.DurationExtensions DurationExtensions}
* class.
*/
package de.fhg.fokus.xtensions.datetime;
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/**
* This package holds classes providing extension methods for the functional
* interfaces defined in Xtend's standard library.
* <br>
* <br>
* Extension methods for the interfaces defined in {@link org.eclipse.xtext.xbase.lib.Functions}
* are defined in class {@link de.fhg.fokus.xtensions.function.FunctionExtensions FunctionExtensions}.
* <br>
* In future this package may also hold classes for concepts of functional
* programming, that can be considered useful in Xtend code bases.
*/
package de.fhg.fokus.xtensions.function;
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/**
* This package contains classes providing extension methods on the
* {@code Optional} types provided by the JDK.<br>
* <br>
* Extension methods for {@link java.util.Optional Optional} are defined in
* {@link de.fhg.fokus.xtensions.optional.OptionalExtensions
* OptionalExtensions}.<br>
* <br>
* Extension methods for {@link java.util.Optional OptionalInt} are defined in
* {@link de.fhg.fokus.xtensions.optional.OptionalExtensions
* OptionalIntExtensions}.<br>
* <br>
* Extension methods for {@link java.util.Optional OptionalLong} are defined in
* {@link de.fhg.fokus.xtensions.optional.OptionalExtensions
* OptionalLongExtensions}.<br>
* <br>
* Extension methods for {@link java.util.Optional OptionalDouble} are defined
* in {@link de.fhg.fokus.xtensions.optional.OptionalExtensions
* OptionaDoublelExtensions}.<br>
* <br>
*/
package de.fhg.fokus.xtensions.optional;
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/**
* This package holds classes providing extension methods for the
* Xtend library class {@link org.eclipse.xtext.xbase.lib.Pair Pair}.
*/
package de.fhg.fokus.xtensions.pair;
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/**
* This package holds classes providing extension methods for the
* Xtend library class {@link org.eclipse.xtext.xbase.lib.IntegerRange IntegerRange}.
*/
package de.fhg.fokus.xtensions.range;
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/**
* This package contains classes providing extension methods for the JDK class
* {@link java.util.stream.Stream Stream}. Some of the extension methods provide
* functionality known from Xtend's Iterator/Iterable extension methods to make
* the experience of using {@code Stream}s more naturally with Xtend. Other
* extension methods make use of the feature that extension methods in Xtend can
* be defined on specialized generic types; the class
* {@link de.fhg.fokus.xtensions.stream.StringStreamExtensions
* StringStreamExtensions} provide extension methods on {@code Stream<String>}.
*/
package de.fhg.fokus.xtensions.stream;
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,15 @@ class StringSplitExtensions {
* so it is is suited well for finding tokens in a string and stop splitting
* as soon as a particular element is found. This also reduces memory copying
* to unused strings.
* @param toSplit input string to split on {@code pattern}. Must not be null
* @param toSplit input char sequence to split on {@code pattern}. Must not be null
* @param pattern the pattern defining where to split the input string {@code toSplit}.
* @param limit maximum amount of elements provided by the returned iterator.
* @return iterator providing the split results
* @throws NullPointerException if toSplit or pattern is null
* @throws java.util.regex.PatternSyntaxException if the {@code pattern}'s syntax is invalid
* @see String#split(String,int)
*/
static def Iterator<String> splitIt(String toSplit, String pattern, int limit) {
static def Iterator<String> splitIt(CharSequence toSplit, String pattern, int limit) {
toSplit.splitIt(Pattern.compile(pattern), limit)
}

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
/**
* This package contains classes providing extension methods for the subclasss of JDK class
* {@link java.lang.CharSequence CharSequence} (e.g. {@link java.lang.String String}).<br>
* <br>
* To obtain an {@link java.util.Iterator Iterator} lazily progress over matches
* of a regex pattern, the
* {@link de.fhg.fokus.xtensions.string.StringMatchExtensions
* StringMatchExtensions} class provides respective extension methods.<br>
* <br>
* To lazily split a string based on a pattern using an {@code Iterator}, the
* class {@link de.fhg.fokus.xtensions.string.StringSplitExtensions StringSplitExtensions}
* provides respective extension methods.
*/
package de.fhg.fokus.xtensions.string;

0 comments on commit 8a701c6

Please sign in to comment.