Browse Source

new: SimpleStreamer#tail
change: IArguments#toString

Mariusz Sieroń 6 years ago
parent
commit
8a8f343983

+ 4 - 0
assira/src/main/java/net/ranides/assira/lexer/SimpleStreamer.java

@@ -21,6 +21,10 @@ public class SimpleStreamer {
         return position >= content.length;
     }
 
+    public String tail() {
+        return new String(content).substring(position);
+    }
+
     public char peek() {
         check();
         return content[position];

+ 9 - 2
assira/src/main/java/net/ranides/assira/reflection/impl/AArguments.java

@@ -6,12 +6,14 @@
  */
 package net.ranides.assira.reflection.impl;
 
+import net.ranides.assira.collection.query.CQuery;
+import net.ranides.assira.reflection.*;
+import net.ranides.assira.text.StrBuilder;
+
 import java.lang.reflect.Parameter;
 import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
-import net.ranides.assira.collection.query.CQuery;
-import net.ranides.assira.reflection.*;
 
 /**
  *
@@ -55,5 +57,10 @@ public class AArguments extends AElements<IArgument> implements IArguments {
     public int count() {
         return count;
     }
+
+    @Override
+    public String toString() {
+        return new StrBuilder().open("(", ")", ",").append(list()).toString();
+    }
     
 }

+ 8 - 0
assira/src/test/java/net/ranides/assira/lexer/SimpleStreamerTest.java

@@ -25,6 +25,14 @@ public class SimpleStreamerTest {
         });
     }
 
+    @Test
+    public void tail() {
+        SimpleStreamer streamer = new SimpleStreamer("hello world");
+        streamer.skip(4);
+
+        assertEquals("o world", streamer.tail());
+    }
+
     @Test
     public void patterns() {
         SimpleStreamer streamer = new SimpleStreamer("hello 1990 world");