def link(source_path):
if not os.path.isfile(source_path):<EOL><INDENT>raise SourceNotFound(source_path)<EOL><DEDENT>with open(source_path, '<STR_LIT:r>') as f:<EOL><INDENT>content = f.read()<EOL><DEDENT>block_map = BlockMap()  <EOL>all_block = convert_lines_to_block(<EOL>content.splitlines(), block_map, LinkStack(source_path), source_path)<EOL>return all_block, block_map.get_variables()<EOL>
Links the content found at source_path and represents a Block that represents the content.