Home / Function/ extract_multiline_code_blocks() — fastapi Function Reference

extract_multiline_code_blocks() — fastapi Function Reference

Architecture documentation for the extract_multiline_code_blocks() function in doc_parsing_utils.py from the fastapi codebase.

Function python FastAPI Applications calls 1 called by 1

Entity Profile

Dependency Diagram

graph TD
  8bbb49cb_74df_612d_38c6_22ef079c6e8c["extract_multiline_code_blocks()"]
  c463d6a9_085f_f272_b9fc_455b7e9b6a57["doc_parsing_utils.py"]
  8bbb49cb_74df_612d_38c6_22ef079c6e8c -->|defined in| c463d6a9_085f_f272_b9fc_455b7e9b6a57
  63822d7d_03fc_4331_3f93_3026c9c03415["check_translation()"]
  63822d7d_03fc_4331_3f93_3026c9c03415 -->|calls| 8bbb49cb_74df_612d_38c6_22ef079c6e8c
  a7e71bd4_bab8_f786_8624_f19e178c6b74["get_code_block_lang()"]
  8bbb49cb_74df_612d_38c6_22ef079c6e8c -->|calls| a7e71bd4_bab8_f786_8624_f19e178c6b74
  style 8bbb49cb_74df_612d_38c6_22ef079c6e8c fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

scripts/doc_parsing_utils.py lines 482–549

def extract_multiline_code_blocks(text: list[str]) -> list[MultilineCodeBlockInfo]:
    blocks: list[MultilineCodeBlockInfo] = []

    in_code_block3 = False
    in_code_block4 = False
    current_block_lang = ""
    current_block_start_line = -1
    current_block_lines = []

    for line_no, line in enumerate(text, start=1):
        stripped = line.lstrip()

        # --- Detect opening fence ---
        if not (in_code_block3 or in_code_block4):
            if stripped.startswith("```"):
                current_block_start_line = line_no
                count = len(stripped) - len(stripped.lstrip("`"))
                if count == 3:
                    in_code_block3 = True
                    current_block_lang = get_code_block_lang(stripped)
                    current_block_lines = [line]
                    continue
                elif count >= 4:
                    in_code_block4 = True
                    current_block_lang = get_code_block_lang(stripped)
                    current_block_lines = [line]
                    continue

        # --- Detect closing fence ---
        elif in_code_block3:
            if stripped.startswith("```"):
                count = len(stripped) - len(stripped.lstrip("`"))
                if count == 3:
                    current_block_lines.append(line)
                    blocks.append(
                        MultilineCodeBlockInfo(
                            lang=current_block_lang,
                            start_line_no=current_block_start_line,
                            content=current_block_lines,
                        )
                    )
                    in_code_block3 = False
                    current_block_lang = ""
                    current_block_start_line = -1
                    current_block_lines = []
                    continue
            current_block_lines.append(line)

        elif in_code_block4:
            if stripped.startswith("````"):
                count = len(stripped) - len(stripped.lstrip("`"))
                if count >= 4:
                    current_block_lines.append(line)
                    blocks.append(
                        MultilineCodeBlockInfo(
                            lang=current_block_lang,
                            start_line_no=current_block_start_line,
                            content=current_block_lines,
                        )
                    )
                    in_code_block4 = False
                    current_block_lang = ""
                    current_block_start_line = -1
                    current_block_lines = []
                    continue
            current_block_lines.append(line)

    return blocks

Domain

Subdomains

Frequently Asked Questions

What does extract_multiline_code_blocks() do?
extract_multiline_code_blocks() is a function in the fastapi codebase, defined in scripts/doc_parsing_utils.py.
Where is extract_multiline_code_blocks() defined?
extract_multiline_code_blocks() is defined in scripts/doc_parsing_utils.py at line 482.
What does extract_multiline_code_blocks() call?
extract_multiline_code_blocks() calls 1 function(s): get_code_block_lang.
What calls extract_multiline_code_blocks()?
extract_multiline_code_blocks() is called by 1 function(s): check_translation.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free