slice2cs(1)

πŸ“¦
version 3.7.10 Β· 3 versions
, in arch rolling, debian trixie, ubuntu noble, ubuntu questing, ubuntu resolute

πŸ’– slice2cs(1) β€” the Slice ➑️ C# compiler, bestie edition πŸ’…

Okay so real talk: this page is from the General Commands Manual, and the command we're hyping up is slice2cs β€” the Slice to C# compiler. Grab a strawberry πŸ“, sit down, and let's get into it.


✨ NAME ✨

slice2cs β€” the Slice to C# compiler. That's it, that's the name, periodt. πŸ‘‘


🌈 SYNOPSIS 🌈

slice2swift [options] [files]

Bestie. I know. I KNOW. πŸ’€ The synopsis says slice2swift, not slice2cs. I'm not editing it, I'm not "fixing" it, I'm just showing you the receipt exactly as it was handed to me. It's giving typo energy, and we're all just living in it. πŸ™ˆ Anyway: options, then files. That's the shape of it.


πŸ¦‹ DESCRIPTION πŸ¦‹

So slice2swift compiles Slice files to Swift. During this compilation the macro __SLICE2SWIFT__ is defined. Yes, again β€” this is the Swift one being described, on the C# page. I am simply the messenger and the messenger is sipping her drink. 🧚

The full documentation for slice2swift is available online at:

https://doc.zeroc.com/ice/latest/language-mappings/swift-mapping/client-side-slice-to-swift-mapping/slice2swift-command-line-options

Lowkey a whole novel over there, but it's the official source so go off. ✨


πŸ’… OPTIONS πŸ’…

Alright, the main event. Every single flag, no skips, no "eh you get the idea". You get the idea and the flag. 🫢

  • -h, --help β€” shows you a help message. Your little rescue blanket when you forget everything. 🌸
  • -v, --version β€” prints out the compiler version. Vibe check the build. ⭐
  • -DNAME β€” defines the preprocessor symbol NAME. Manifesting it into existence. ✨
  • -DNAME=DEF β€” defines the preprocessor symbol NAME and gives it the value DEF. Now it's got lore. πŸ“–
  • -UNAME β€” undefines the preprocessor symbol NAME. Unmanifesting. Not every symbol gets to stay. πŸ’€
  • -IDIR β€” adds the directory DIR to the search path for #include directives. It's the "where do I look for my friends" option. 🫢
  • -E β€” prints the preprocessor output on stdout. Just the preprocessed tea, no compiling, no code gen. β˜•
  • --output-dir DIR β€” drops the generated files into directory DIR. Giving your files a home. 🏠
  • -d, --debug β€” prints debug information showing the operation of the Slice parser. Not me peeking behind the curtain to watch the parser work πŸ”
  • --depend β€” prints dependency information to standard output by default, or to the file named by the --depend-file option. Heads up bestie: no code is generated when this option is specified.
  • --depend-xml β€” prints dependency information in XML format, to standard output by default, or to the file named by the --depend-file option. Also: no code is generated when this option is specified. Same rules, fancier format. πŸ’–
  • --depend-file FILE β€” sends the dependency information into the specified file. Which format you get depends on whether --depend or --depend-xml is also specified. πŸ‘€
  • --validate β€” checks that the command-line options you gave are correct, and does not generate any code. The "am I doing this right" button. βœ…
Reminder to my girlies: --depend, --depend-xml and --validate all mean no code gets generated. If you're sitting there wondering where your output files went... that's why. 😭

πŸ”₯ SEE ALSO πŸ”₯

The whole Slice compiler friend group, all together, all iconic:

Squad goals fr fr. 🌈


And that's the whole page, babes. This was slice2cs(1) from the General Commands Manual β€” shoutout to the manpage itself for carrying all this info, and to you for reading the entire thing instead of just scrolling to the flags. Main character behavior. No cap. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from