place_macro_core

Crates.ioplace_macro_core
lib.rsplace_macro_core
version1.0.0
sourcesrc
created_at2023-12-22 21:36:55.912217
updated_at2023-12-22 21:36:55.912217
descriptionThis crate contains implementation of procedural macros for place_macro.
homepage
repositoryhttps://github.com/BonnyAD9/place_macro/tree/master
max_upload_size
id1078682
size54,551
Jakub Antonín Štigler (BonnyAD9)

documentation

README

Place-macro

crates.io Downloads

Macros you wish you had while you were writing your non-proc macro.

This library privides some macros that make writing regural non-proc macros much simpler, readable and with less dirty tricks.

The main macro of this library is place. It is able to expand the macros in this library in reverse expansion order.

If you have some macros that you would like to add feel free to open new issue on GitHub.

How to get it

With cargo

cargo add place_macro

In Cargo.toml

[dependencies]
place_macro = "1.0.0"

Macros

  • place: expands the following macros in reverse order, see docs for more info
  • ignore: expands to nothing
  • identity: expands to what is given, it bypasses the reverse order in the place macro
  • dollar: expands to dollar sign $
  • string: concats the contents into single string, see the doc
  • identifier: concats the contents into sintle identifier in the same way as string
  • head: expands to the first token
  • tail: expands to all but the first token
  • start: expands to all but the last token
  • last: expands to the last token
  • reverse: expands to the tokens in reverse order
  • stringify: expands to string of the input
  • replace_newline: replaces all newlines and folowing whitespace in literal with the given literal
  • str_replace: replace in string literal
  • to_case: change the case of a identifier

Examples

For examples and more detailed info about how to use the macros in this crate see docs

Links

Commit count: 0

cargo fmt