> It's a little strange in that the visibilityId would control visibility for > both the map and no-arg variations > unless the noArgVisibilityId attribute was set.
Yes, it is strange a little, but not unbearable :-) > Also, if you set noArg=false forĀ @MapConstructor and defaults=true forĀ > @TupleConstructor, you get the > no-arg constructor from the tuple constructor defaults with no way to set the > visibility independently > for the 2 or more related constructors. Actually, this might work for me, since I want only a map constructor anyway. But, I guess it's not appropriate as a general solution. Is it possible to write an AST transform that will reduce the visibility of the default constructor if it exists? I mean, MapConstructorASTTransformation and TupleConstructorASTTransformation are assigned to the CANONICALIZATION phase, and that new transformation should execute after them, I believe. Is it possible to arrange such ordering without changing Groovy code? Tnx, Damir