Allow macro to return void
--------------------------

                 Key: PIG-1998
                 URL: https://issues.apache.org/jira/browse/PIG-1998
             Project: Pig
          Issue Type: Improvement
          Components: impl
    Affects Versions: 0.9.0
            Reporter: Richard Ding
            Assignee: Richard Ding
             Fix For: 0.9.0


Pig macro is allowed to not have output alias. But this property isn't clear 
from macro definition and macro invocation (macro inline). Here we propose to 
make it clear:

1. If a macro doesn't output any alias, it must specify void as return value. 
For example:

{code}  
define mymacro(...) returns void {
   ... ...
};
{code}

2. If a macro doesn't output any alias, it must be invoked without return 
value. For example, to invoke above macro, just specify:

{code}
mymacro(...);
{code}

3. Any non-void return alias in the macro definition must exist in the macro 
body and be prefixed with $. For example:

{code}  
define mymacro(...) returns B {
   ... ...
   $B = filter ...;
};
{code}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to