Jeffrey Han created THRIFT-5417: ----------------------------------- Summary: Fix Lua compiler omitting default values in Lua service functions Key: THRIFT-5417 URL: https://issues.apache.org/jira/browse/THRIFT-5417 Project: Thrift Issue Type: Bug Components: Lua - Compiler Affects Versions: 0.13.0 Reporter: Jeffrey Han
Add missing default argument values for service client functions in generated Lua code. *Example Thrift definition:* {{const string kTestStr = "0"}} {{service SomeService {}} {{ void someMethod(1: string a, 2: string b = kTestStr)}} {{ throws (1: SomeError error)}} {{}}} *Generated code before:* {{function SomeServiceClient:send_someMethod(a, b)}} {{ self.oprot:writeMessageBegin('someMethod', TMessageType.CALL, self._seqid)}} {{ local args = someMethod_args:new{}}} {{ args.a = a}} {{ args.b = b}} {{ args:write(self.oprot)}} {{ self.oprot:writeMessageEnd()}} {{ self.oprot.trans:flush()}} {{end}} *Generated code after:* {{function SomeServiceClient:send_someMethod(a, b)}} {{ self.oprot:writeMessageBegin('someMethod', TMessageType.CALL, self._seqid)}} {{ local args = someMethod_args:new{}}} {{ args.a = a}} {{ if b ~= nil then}} {{ args.b = b}} {{ else}} {{ args.b = '0'}} {{ end}} {{ args:write(self.oprot)}} {{ self.oprot:writeMessageEnd()}} {{ self.oprot.trans:flush()}} {{end}} -- This message was sent by Atlassian Jira (v8.3.4#803005)