codeanalyzer/src/main/java/nl/obren/sokrates/sourcecode/lang/lua/LuaHeuristicUnitsExtractor.java [28:56]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        this.sourceFile = sourceFile;
        this.cleanedFileContent = cleanedFileContent;
        this.analyzer = analyzer;
    }

    public List<UnitInfo> extractUnits() {
        List<UnitInfo> units = new ArrayList<>();

        List<String> lines = Arrays.asList(cleanedFileContent.replace("\t", "    ").split("\n"));

        int lineIndex = 1;
        for (String line : lines) {
            if (isFunctionStartLine(line)) {
                initUnit(units, line, lineIndex);
            } else if (unit != null) {
                updateUnit(line);

                if (line.startsWith(prefix + "end")) {
                    endUnit(lineIndex);
                }
            }
            lineIndex++;
        }

        return units;
    }

    private boolean isFunctionStartLine(String line) {
        String trimmedLine = line.trim();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



codeanalyzer/src/main/java/nl/obren/sokrates/sourcecode/lang/julia/JuliaHeuristicUnitsExtractor.java [27:55]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        this.sourceFile = sourceFile;
        this.cleanedFileContent = cleanedFileContent;
        this.analyzer = analyzer;
    }

    public List<UnitInfo> extractUnits() {
        List<UnitInfo> units = new ArrayList<>();

        List<String> lines = Arrays.asList(cleanedFileContent.replace("\t", "    ").split("\n"));

        int lineIndex = 1;
        for (String line : lines) {
            if (isFunctionStartLine(line)) {
                initUnit(units, line, lineIndex);
            } else if (unit != null) {
                updateUnit(line);

                if (line.startsWith(prefix + "end")) {
                    endUnit(lineIndex);
                }
            }
            lineIndex++;
        }

        return units;
    }

    private boolean isFunctionStartLine(String line) {
        String trimmedLine = line.trim();
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



