Skip to content

Array of sequence is not supported #283

@t0ny-peng

Description

@t0ny-peng

Description

The OMGIDL allows defining an array whose element is a bounded sequence. However, this is not supported in the foxglove.

  • Version: Latest one on Flxglove website
  • Platform: Browser

Steps To Reproduce

Create an MCAP file with the following omgidl definition:

module test {
module group {
    @final struct Groups {
        sequence<octet, 71> grp7[70];
    };

};
};

Open the mcap file in foxglove UI and you'll see this error message

Error message:

Error in topic /chatter2 (channel 1)
Syntax error at line 10 col 33:

 8  };
 9  
10  
                                    ^
Unexpected LBR token: "[". Instead, I was expecting to see one of the following:

A "," based on:
    multiFieldNames$ebnf$1$subexpression$1 →  ● "," fieldName
    multiFieldNames$ebnf$1 → multiFieldNames$ebnf$1 ● multiFieldNames$ebnf$1$subexpression$1
    multiFieldNames → fieldName ● multiFieldNames$ebnf$1
    fieldDcl$subexpression$1 → sequenceType ● multiFieldNames
    fieldDcl →  ● fieldDcl$subexpression$1
    fieldWithAnnotation → multiAnnotations ● fieldDcl
    member →  ● fieldWithAnnotation semi
    struct$ebnf$1$subexpression$1 →  ● member
    struct$ebnf$1 → struct$ebnf$1 ● struct$ebnf$1$subexpression$1
    struct → "struct" fieldName "{" ● struct$ebnf$1 "}"
    typeDcl$subexpression$1 →  ● struct
    typeDcl →  ● typeDcl$subexpression$1
    definition$subexpression$1 →  ● typeDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    moduleDcl$ebnf$1$subexpression$1 →  ● definition
    moduleDcl$ebnf$1 →  ● moduleDcl$ebnf$1$subexpression$1
    moduleDcl → "module" fieldName "{" ● moduleDcl$ebnf$1 "}"
    definition$subexpression$1 →  ● moduleDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    moduleDcl$ebnf$1$subexpression$1 →  ● definition
    moduleDcl$ebnf$1 →  ● moduleDcl$ebnf$1$subexpression$1
    moduleDcl → "module" fieldName "{" ● moduleDcl$ebnf$1 "}"
    definition$subexpression$1 →  ● moduleDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    main$ebnf$1$subexpression$2 → main$ebnf$1$subexpression$2$ebnf$1 ● definition
    main$ebnf$1 → main$ebnf$1 ● main$ebnf$1$subexpression$2
    main →  ● main$ebnf$1
A ";" based on:
    semi →  ● ";"
    member → fieldWithAnnotation ● semi
    struct$ebnf$1$subexpression$1 →  ● member
    struct$ebnf$1 → struct$ebnf$1 ● struct$ebnf$1$subexpression$1
    struct → "struct" fieldName "{" ● struct$ebnf$1 "}"
    typeDcl$subexpression$1 →  ● struct
    typeDcl →  ● typeDcl$subexpression$1
    definition$subexpression$1 →  ● typeDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    moduleDcl$ebnf$1$subexpression$1 →  ● definition
    moduleDcl$ebnf$1 →  ● moduleDcl$ebnf$1$subexpression$1
    moduleDcl → "module" fieldName "{" ● moduleDcl$ebnf$1 "}"
    definition$subexpression$1 →  ● moduleDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    moduleDcl$ebnf$1$subexpression$1 →  ● definition
    moduleDcl$ebnf$1 →  ● moduleDcl$ebnf$1$subexpression$1
    moduleDcl → "module" fieldName "{" ● moduleDcl$ebnf$1 "}"
    definition$subexpression$1 →  ● moduleDcl
    definition → multiAnnotations ● definition$subexpression$1 semi
    main$ebnf$1$subexpression$2 → main$ebnf$1$subexpression$2$ebnf$1 ● definition
    main$ebnf$1 → main$ebnf$1 ● main$ebnf$1$subexpression$2
    main →  ● main$ebnf$1

Expected Behavior

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions