whole_func_string: function(key) {
      var pos = key.indexOf('[');
      if (pos === -1) return { type: 'string', val: key };
      return { type: 'array', val: key.substr(0, pos) };
    }
func_code_string: function(key) {
      var pos = key.indexOf('[');
      if (pos === -1) return { type: 'string', val: key };
      return { type: 'array', val: key.substr(0, pos) };
    }
func_documentation_string: for now we will only support string and arrays