package mb.statix.concurrent.p_raffrayi.nameresolution;

import java.util.Optional;

public interface LabelWf<L> {

    Optional<LabelWf<L>> step(L l);

    boolean accepting();

    static <L> LabelWf<L> any() {
        return new LabelWf<L>() {

            @Override public boolean accepting() {
                return true;
            }

            @Override public Optional<LabelWf<L>> step(L l) {
                return Optional.of(this);
            }

        };
    }

}
@@ -220,16 +220,59 @@
   return
+ ANY;%0A    %7D%0A%0A    static final LabelWf ANY =
  new Lab
@@ -279,21 +279,14 @@
 elWf
-%3CL%3E
 () %7B%0A%0A
-    
     
@@ -336,28 +336,24 @@
             
-    
 return true;
@@ -357,35 +357,27 @@
 ue;%0A        
-  
-  
 %7D%0A%0A
-    
         @Ove
@@ -405,27 +405,29 @@
 %3CLabelWf
-%3CL%3E
 %3E step(
-L
+Object
  l) %7B%0A  
@@ -432,28 +432,24 @@
             
-  
-  
 return Optio
@@ -466,30 +466,96 @@
 s);%0A        
+%7D%0A%0A
     
-%7D%0A
+    @Override public String toString() %7B%0A            return %22.*%22;
 %0A        %7D;%0A
@@ -552,18 +552,19 @@
        %7D
-;
+%0A
 %0A    %7D
+;
 %0A%0A%7D

Make LabelWF.any() a singleton.