Skip to content

LineNumber markers and other source-code information #70

Open

Description

@LDemetrios

So this is pretty self-explanatory.

There are artifacts of the original code that are sort of a common practice to include in jars and there are some that aren't.

  • Source file entry. Indicates the name of the file which the class was compiled from.
  • LineNumber markers. These are used in stack traces.
  • CharacterRanges. These are much less common then linenumbers and probably would take a lot of space, so I would only include them in debug build.
  • Docs. Interestingly enough, they are usually built into a different jar, compiled as html (so you don't have to transform rust docs into javadocs, just compile to html and bind). That would be especially useful for library developers, which usually have to ship all three: sources, binaries and docs.

Funnily enough, in the next issue I will complain about the binary size, so I probably all of this should be optional.

Activity

  1. IntegralPilot commented on Oct 2, 2026

    @IntegralPilot
    Owner

    Thanks! I already emit Source file and Line number markings but I will look into the others, they seem useful!

  2. LDemetrios commented on Oct 2, 2026

    @LDemetrios
    Author

    Oh, the one thing I forgot to mention, is variable names. If I remember correctly, there should be an attribute allowing to store the names of the local variables, which might be useful for analyzing the compiled code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions