Macro joining Thrift structs.

likewise here, instead of calculating `inputFieldsContainsAllOutputFields`, we could work directly off `missingFields`