You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: fixture.rs
    path of file: ./repos/mun/crates/mun_hir/src
    
    the code of the file until where you have to start completion: use itertools::Itertools;
use mun_paths::RelativePathBuf;

const DEFAULT_FILE_NAME: &str = "mod.mun";
const META_LINE: &str = "//-";

/// A `Fixture` describes an single file in a project workspace. `Fixture`s can
/// be parsed from a single string with the `parse` function. Using that
/// function enables users to conveniently describe an entire workspace
    
    pub fn parse(text: impl AsRef<str>) -> Vec<Fixture> {
        let text = trim_raw_string_literal(text);
        let mut result: Vec<Fixture> = Vec::new();

        // If the text does not contain any meta tags, insert a default meta tag at the
        // start.
        let default_start = if text.contains(META_LINE) {
            None
        } else {
            Some(format!("{META_LINE} /{DEFAULT_FILE_NAME}"))
        };

        for (idx, line) in default_start
            .as_deref()
            .into_iter()
            .chain(text.lines())
            .enumerate()
        {
            if line.contains(META_LINE) {
                assert!(
                    line.starts_with(META_LINE),
                    "Metadata line {idx} has invalid indentation. \
                     All metadata lines need to have the same indentation \n\
                     The offending line: {line:?}"
                );
            }

            if line.starts_with(META_LINE) {
                let meta = Fixture::parse_meta_line(line);
                result.push(meta);
            } else if let Some(entry) = result.last_mut() {
                entry.text.push_str(line);
                entry.text.push('\n');
            }
        }

        result
    }