def __get_placeholders(self):
ret = True<EOL>pattern = re.compile('<STR_LIT>')<EOL>matches = pattern.findall(self._routine_source_code)<EOL>placeholders = []<EOL>if len(matches) != <NUM_LIT:0>:<EOL><INDENT>for tmp in matches:<EOL><INDENT>placeholder = tmp[<NUM_LIT:0>]<EOL>if placeholder.lower() not in self._replace_pairs:<EOL><INDENT>raise LoaderException("<STR_LIT>".<EOL>format(placeholder, self._source_filename))<EOL><DEDENT>if placeholder not in placeholders:<EOL><INDENT>placeholders.append(placeholder)<EOL><DEDENT><DEDENT><DEDENT>for placeholder in placeholders:<EOL><INDENT>if placeholder not in self._replace:<EOL><INDENT>self._replace[placeholder] = self._replace_pairs[placeholder.lower()]<EOL><DEDENT><DEDENT>return ret<EOL>
Extracts the placeholders from the stored routine source.