include ./textutils.ysl2 function "toJava" { param "type"; choose { when "$type='stringlist'" > ArrayList when "$type='string'" > String when "$type='message'" > MimeMessage when "$type='identity'" > Identity when "$type='identitylist'" > ArrayList when "$type='timestamp'" > Date when "$type='encformat'" > MimeMessage.EncFormat when "$type='bloblist'" > ArrayList when "$type='stringpairlist'" > ArrayList> when "$type='message'" > MimeMessage otherwise call "CamelCase" with "text", "$type"; } } function "toIntermediate" { param "type"; choose { when "$type='stringlist'" > ArrayList when "$type='stringpairlist'" > ArrayList> when "$type='string'" > byte[] otherwise call "toJava" with "type", "$type"; } } define operator "†([$@]?[a-zA-Z0-9_]+)" as call "toJava" with "type", "%1"; define operator "¡([$@]?[a-zA-Z0-9_]+)" as call "toIntermediate" with "type", "%1";