'generates the dynamic values, like the names of resource groups'

def gen_dynamic_completions(self, text):

    try:
        (is_param, started_param, prefix, param) = dynamic_param_logic(text)
        arg_name = self.get_arg_name(is_param, param)
        if (arg_name and ((text.split()[(-1)].startswith(u'-') and text[(-1)].isspace()) or text.split()[(-2)].startswith(u'-'))):
            for comp in self.gen_enum_completions(arg_name, text, started_param, prefix):
                (yield comp)
            parse_args = self.mute_parse_args(text)
            if self.cmdtab[self.curr_command].arguments[arg_name].completer:
                try:
                    for comp in self.cmdtab[self.curr_command].arguments[arg_name].completer(prefix=prefix, action=None, parsed_args=parse_args):
                        for comp in gen_dyn_completion(comp, started_param, prefix, text):
                            (yield comp)
                except TypeError:
                    try:
                        for comp in self.cmdtab[self.curr_command].arguments[arg_name].completer(prefix=prefix):
                            for comp in gen_dyn_completion(comp, started_param, prefix, text):
                                (yield comp)
                    except TypeError:
                        try:
                            for comp in self.cmdtab[self.curr_command].arguments[arg_name].completer():
                                for comp in gen_dyn_completion(comp, started_param, prefix, text):
                                    (yield comp)
                        except TypeError:
                            pass
    except Exception:
        pass
