protected override string[] functionDefTr(FunctionDef function)
        {
            dynamic[]     info = function.getTranslatorInfo();
            string        name = (string)info[0];
            string        type = (string)info[1];
            List <string> args = (List <string>)info[2];

            string[] instructions = instr2Lines((List <Instruction>)info[3]);
            // bool recursive = (bool) info[4];
            List <string> func_def_list = new List <string> {
                "public " +
                type + " " +
                name + "(" +
                StringUtils.reuniteBySymbol(args, ", ")
                + ") {"
            };

            func_def_list.AddRange(instructions);
            func_def_list.Add("}");

            return(func_def_list.ToArray());
        }