private byte[] generateFunctionOrMethodBlock(WyilFile.FunctionOrMethodDeclaration md) throws IOException {
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
BinaryOutputStream output = new BinaryOutputStream(bytes);
output.write_uv(stringCache.get(md.name()));
output.write_uv(generateModifiers(md.modifiers()));
output.write_uv(typeCache.get(md.type()));
output.write_uv(md.cases().size());
for(WyilFile.Case c : md.cases()) {
writeBlock(BLOCK_Case,c,output);