The goal is have the binding specification stored in one place. Right now, the binding code is generated from the IDL file and many special cases which live in CodeGeneratorJS.pm and CodeGenerator.pm. The ideal solution is to have these special cases added as flags in the IDL file.