def interpret_directive_line(self, line): splitted_line = line.split() if splitted_line[1] == 'require': return AssetLine.create_require(splitted_line[2]) elif splitted_line[1] == 'require_self': return AssetLine.create_require_self() else: # TODO(stan): need to implement 'require_tree', 'require_dir' raise Exception()
def interpret_line(self, line): line = line.rstrip() if self.manifest_ended: return AssetLine.create_content_line(line) else: if self.multi_line_comment_opened: if self.is_line_multi_line_directive(line): return self.interpret_directive_line(line) else: if self.is_line_closing_multi_line_comment(line): self.multi_line_comment_opened = False return AssetLine.create_content_line(line) else: if self.is_line_opening_multi_line_comment(line): self.multi_line_comment_opened = True return AssetLine.create_content_line(line) elif self.is_line_single_line_directive(line): return self.interpret_directive_line(line) else: self.manifest_ended = True return AssetLine.create_content_line(line)