def create_insert():
insert = upkey("<STR_LIT>").setResultsName("<STR_LIT:action>")<EOL>attrs = Group(delimitedList(var)).setResultsName("<STR_LIT>")<EOL>value_group = Group(Suppress("<STR_LIT:(>") + delimitedList(value) + Suppress("<STR_LIT:)>"))<EOL>values = Group(delimitedList(value_group)).setResultsName("<STR_LIT>")<EOL>values_insert = Suppress("<STR_LIT:(>") + attrs + Suppress("<STR_LIT:)>") + upkey("<STR_LIT>") + values<EOL>keyword = Group(var + Suppress("<STR_LIT:=>") + value)<EOL>item = Group(Suppress("<STR_LIT:(>") + delimitedList(keyword) + Suppress("<STR_LIT:)>"))<EOL>keyword_insert = delimitedList(item).setResultsName("<STR_LIT>")<EOL>return insert + into + table + (values_insert | keyword_insert) + Optional(throttle)<EOL>
Create the grammar for the 'insert' statement