You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Benedikt Ritter <br...@apache.org> on 2015/04/13 13:19:26 UTC
Re: svn commit: r1672833 - in /commons/proper/lang/trunk/src:
changes/changes.xml main/java/org/apache/commons/lang3/CharSet.java test/java/org/apache/commons/lang3/CharSetTest.java
Hello Duncan,
2015-04-11 8:02 GMT+02:00 <dj...@apache.org>:
> Author: djones
> Date: Sat Apr 11 06:02:34 2015
> New Revision: 1672833
>
> URL: http://svn.apache.org/r1672833
> Log:
> Update for LANG-1069: CharSet.getInstance documentation does not clearly
> explain how to include negation character in set. Javadoc expanded and unit
> tests added to match examples. Based on patch by Arno Noordover.
>
> Modified:
> commons/proper/lang/trunk/src/changes/changes.xml
>
> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
>
> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
>
> Modified: commons/proper/lang/trunk/src/changes/changes.xml
> URL:
> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/changes/changes.xml?rev=1672833&r1=1672832&r2=1672833&view=diff
>
> ==============================================================================
> --- commons/proper/lang/trunk/src/changes/changes.xml [utf-8] (original)
> +++ commons/proper/lang/trunk/src/changes/changes.xml [utf-8] Sat Apr 11
> 06:02:34 2015
> @@ -22,6 +22,7 @@
> <body>
>
> <release version="3.5" date="tba" description="tba">
> + <action issue="LANG-1069" type="update" dev="djones" due-to="Arno
> Noordover">CharSet.getInstance documentation does not clearly explain how
> to include negation character in set</action>
> <action issue="LANG-1050" type="add" dev="djones" due-to="James
> Sawle">Change nullToEmpty methods to generics</action>
> <action issue="LANG-1111" type="fix" dev="chas">Fix FindBugs warnings
> in DurationFormatUtils</action>
> <action issue="LANG-1074" type="add" dev="djones" due-to="Haiyang
> Li">Add a method to ArrayUtils for removing all occurrences of a given
> element</action>
>
> Modified:
> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java?rev=1672833&r1=1672832&r2=1672833&view=diff
>
> ==============================================================================
> ---
> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
> (original)
> +++
> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
> Sat Apr 11 06:02:34 2015
> @@ -115,6 +115,7 @@ public class CharSet implements Serializ
> * <li>Negated single character, such as "^a"
> * <li>Ordinary single character, such as "a"
> * </ol>
> + *
> * <p>Matching works left to right. Once a match is found the
> * search starts again from the next character.</p>
> *
> @@ -128,7 +129,24 @@ public class CharSet implements Serializ
> * as the "a-e" and "e-a" are the same.</p>
> *
> * <p>The set of characters represented is the union of the specified
> ranges.</p>
> + *
> + * <p>There are two ways to add a literal negation character ({@code
> ^}):</p>
> + * <ul>
> + * <li>As the last character in a string, e.g. {@code
> CharSet.getInstance("a-z^")}</li>
> + * <li>As a separate element, e.g. {@code
> CharSet.getInstance("^","a-z")}</li>
> + * </ul>
> *
> + * <p>Examples using the negation character:</p>
> + * <pre>
> + * CharSet.getInstance("^a-c").contains('a') = false
> + * CharSet.getInstance("^a-c").contains('d') = true
> + * CharSet.getInstance("^^a-c").contains('a') = true // (only '^'
> is negated)
> + * CharSet.getInstance("^^a-c").contains('^') = false
> + * CharSet.getInstance("^a-cd-f").contains('d') = true
> + * CharSet.getInstance("a-c^").contains('^') = true
> + * CharSet.getInstance("^", "a-c").contains('^') = true
> + * </pre>
> + *
> * <p>All CharSet objects returned by this method will be
> immutable.</p>
> *
> * @param setStrs Strings to merge into the set, may be null
>
> Modified:
> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
> URL:
> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java?rev=1672833&r1=1672832&r2=1672833&view=diff
>
> ==============================================================================
> ---
> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
> (original)
> +++
> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
> Sat Apr 11 06:02:34 2015
> @@ -18,10 +18,7 @@
> */
> package org.apache.commons.lang3;
>
> -import static org.junit.Assert.assertEquals;
> -import static org.junit.Assert.assertFalse;
> -import static org.junit.Assert.assertSame;
> -import static org.junit.Assert.assertTrue;
> +import static org.junit.Assert.*;
>
I prefer explicit imports. Would you mind changing your IDE setting in this
regard?
>
> import java.lang.reflect.Modifier;
>
> @@ -466,4 +463,14 @@ public class CharSetTest {
> assertTrue(ArrayUtils.contains(array, CharRange.isIn('0', '9')));
> }
>
> + @Test
> + public void testJavadocExamples() throws Exception {
> + assertFalse(CharSet.getInstance("^a-c").contains('a'));
> + assertTrue(CharSet.getInstance("^a-c").contains('d'));
> + assertTrue(CharSet.getInstance("^^a-c").contains('a'));
> + assertFalse(CharSet.getInstance("^^a-c").contains('^'));
> + assertTrue(CharSet.getInstance("^a-cd-f").contains('d'));
> + assertTrue(CharSet.getInstance("a-c^").contains('^'));
> + assertTrue(CharSet.getInstance("^", "a-c").contains('^'));
> + }
> }
>
>
>
--
http://people.apache.org/~britter/
http://www.systemoutprintln.de/
http://twitter.com/BenediktRitter
http://github.com/britter
Re: svn commit: r1672833 - in /commons/proper/lang/trunk/src:
changes/changes.xml main/java/org/apache/commons/lang3/CharSet.java test/java/org/apache/commons/lang3/CharSetTest.java
Posted by Duncan Jones <dj...@apache.org>.
On 13 April 2015 at 12:19, Benedikt Ritter <br...@apache.org> wrote:
> Hello Duncan,
>
> 2015-04-11 8:02 GMT+02:00 <dj...@apache.org>:
>
>> Author: djones
>> Date: Sat Apr 11 06:02:34 2015
>> New Revision: 1672833
>>
>> URL: http://svn.apache.org/r1672833
>> Log:
>> Update for LANG-1069: CharSet.getInstance documentation does not clearly
>> explain how to include negation character in set. Javadoc expanded and unit
>> tests added to match examples. Based on patch by Arno Noordover.
>>
>> Modified:
>> commons/proper/lang/trunk/src/changes/changes.xml
>>
>> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
>>
>> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
>>
>> Modified: commons/proper/lang/trunk/src/changes/changes.xml
>> URL:
>> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/changes/changes.xml?rev=1672833&r1=1672832&r2=1672833&view=diff
>>
>> ==============================================================================
>> --- commons/proper/lang/trunk/src/changes/changes.xml [utf-8] (original)
>> +++ commons/proper/lang/trunk/src/changes/changes.xml [utf-8] Sat Apr 11
>> 06:02:34 2015
>> @@ -22,6 +22,7 @@
>> <body>
>>
>> <release version="3.5" date="tba" description="tba">
>> + <action issue="LANG-1069" type="update" dev="djones" due-to="Arno
>> Noordover">CharSet.getInstance documentation does not clearly explain how
>> to include negation character in set</action>
>> <action issue="LANG-1050" type="add" dev="djones" due-to="James
>> Sawle">Change nullToEmpty methods to generics</action>
>> <action issue="LANG-1111" type="fix" dev="chas">Fix FindBugs warnings
>> in DurationFormatUtils</action>
>> <action issue="LANG-1074" type="add" dev="djones" due-to="Haiyang
>> Li">Add a method to ArrayUtils for removing all occurrences of a given
>> element</action>
>>
>> Modified:
>> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
>> URL:
>> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java?rev=1672833&r1=1672832&r2=1672833&view=diff
>>
>> ==============================================================================
>> ---
>> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
>> (original)
>> +++
>> commons/proper/lang/trunk/src/main/java/org/apache/commons/lang3/CharSet.java
>> Sat Apr 11 06:02:34 2015
>> @@ -115,6 +115,7 @@ public class CharSet implements Serializ
>> * <li>Negated single character, such as "^a"
>> * <li>Ordinary single character, such as "a"
>> * </ol>
>> + *
>> * <p>Matching works left to right. Once a match is found the
>> * search starts again from the next character.</p>
>> *
>> @@ -128,7 +129,24 @@ public class CharSet implements Serializ
>> * as the "a-e" and "e-a" are the same.</p>
>> *
>> * <p>The set of characters represented is the union of the specified
>> ranges.</p>
>> + *
>> + * <p>There are two ways to add a literal negation character ({@code
>> ^}):</p>
>> + * <ul>
>> + * <li>As the last character in a string, e.g. {@code
>> CharSet.getInstance("a-z^")}</li>
>> + * <li>As a separate element, e.g. {@code
>> CharSet.getInstance("^","a-z")}</li>
>> + * </ul>
>> *
>> + * <p>Examples using the negation character:</p>
>> + * <pre>
>> + * CharSet.getInstance("^a-c").contains('a') = false
>> + * CharSet.getInstance("^a-c").contains('d') = true
>> + * CharSet.getInstance("^^a-c").contains('a') = true // (only '^'
>> is negated)
>> + * CharSet.getInstance("^^a-c").contains('^') = false
>> + * CharSet.getInstance("^a-cd-f").contains('d') = true
>> + * CharSet.getInstance("a-c^").contains('^') = true
>> + * CharSet.getInstance("^", "a-c").contains('^') = true
>> + * </pre>
>> + *
>> * <p>All CharSet objects returned by this method will be
>> immutable.</p>
>> *
>> * @param setStrs Strings to merge into the set, may be null
>>
>> Modified:
>> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
>> URL:
>> http://svn.apache.org/viewvc/commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java?rev=1672833&r1=1672832&r2=1672833&view=diff
>>
>> ==============================================================================
>> ---
>> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
>> (original)
>> +++
>> commons/proper/lang/trunk/src/test/java/org/apache/commons/lang3/CharSetTest.java
>> Sat Apr 11 06:02:34 2015
>> @@ -18,10 +18,7 @@
>> */
>> package org.apache.commons.lang3;
>>
>> -import static org.junit.Assert.assertEquals;
>> -import static org.junit.Assert.assertFalse;
>> -import static org.junit.Assert.assertSame;
>> -import static org.junit.Assert.assertTrue;
>> +import static org.junit.Assert.*;
>>
>
> I prefer explicit imports. Would you mind changing your IDE setting in this
> regard?
Eeek, thanks for spotting. I've just changed laptops and clearly this
setting got lost in translation!
I'll amend this in a separate check-in.
>
>
>>
>> import java.lang.reflect.Modifier;
>>
>> @@ -466,4 +463,14 @@ public class CharSetTest {
>> assertTrue(ArrayUtils.contains(array, CharRange.isIn('0', '9')));
>> }
>>
>> + @Test
>> + public void testJavadocExamples() throws Exception {
>> + assertFalse(CharSet.getInstance("^a-c").contains('a'));
>> + assertTrue(CharSet.getInstance("^a-c").contains('d'));
>> + assertTrue(CharSet.getInstance("^^a-c").contains('a'));
>> + assertFalse(CharSet.getInstance("^^a-c").contains('^'));
>> + assertTrue(CharSet.getInstance("^a-cd-f").contains('d'));
>> + assertTrue(CharSet.getInstance("a-c^").contains('^'));
>> + assertTrue(CharSet.getInstance("^", "a-c").contains('^'));
>> + }
>> }
>>
>>
>>
>
>
> --
> http://people.apache.org/~britter/
> http://www.systemoutprintln.de/
> http://twitter.com/BenediktRitter
> http://github.com/britter
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org