Skip to content

Rustdoc generates invalid code for struct-like enums #9587

Closed
@sfackler

Description

@sfackler

For example, the enum

pub enum FrontendMessage<'self> {
    Bind {
        portal: &'self str,
        statement: &'self str,
        formats: &'self [i16],
        values: &'self [Option<~[u8]>],
        result_formats: &'self [i16]
    },
    Close {
        variant: u8,
        name: &'self str
    },
    Describe {
        variant: u8,
        name: &'self str
    },
    Execute {
        portal: &'self str,
        max_rows: i32
    },
    Parse {
        name: &'self str,
        query: &'self str,
        param_types: &'self [i32]
    },
    PasswordMessage {
        password: &'self str
    },
    Query {
        query: &'self str
    },
    StartupMessage {
        version: i32,
        parameters: &'self [(~str, ~str)]
    },
    Sync,
    Terminate
}

shows up in rustdoc as

pub enum FrontendMessage<'self> {
struct Bind {
    portal: &'self str,
        statement: &'self str,
        formats: &'self [i16],
        values: &'self [std::option::Option],
        result_formats: &'self [i16],
    }struct Close {
    variant: u8,
        name: &'self str,
    }struct Describe {
    variant: u8,
        name: &'self str,
    }struct Execute {
    portal: &'self str,
        max_rows: i32,
    }struct Parse {
    name: &'self str,
        query: &'self str,
        param_types: &'self [i32],
    }struct PasswordMessage {
    password: &'self str,
    }struct Query {
    query: &'self str,
    }struct StartupMessage {
    version: i32,
        parameters: &'self [(~str, ~str)],
    }    Sync,
    Terminate,
}

Metadata

Metadata

Assignees

Labels

T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions