diff options
| author | Li Jin <dragon-fly@qq.com> | 2026-04-22 16:41:46 +0800 |
|---|---|---|
| committer | Li Jin <dragon-fly@qq.com> | 2026-04-22 16:41:46 +0800 |
| commit | 56b76f68f127e438880bbd1a6178c67bd7d59cab (patch) | |
| tree | 95a21814cf4751807023b60ad5c3f2effa41fa99 /doc/docs/pt-br | |
| parent | d4e8b147694f35ac37c48dbfdd4b179c892beb01 (diff) | |
| download | yuescript-56b76f68f127e438880bbd1a6178c67bd7d59cab.tar.gz yuescript-56b76f68f127e438880bbd1a6178c67bd7d59cab.tar.bz2 yuescript-56b76f68f127e438880bbd1a6178c67bd7d59cab.zip | |
Updated docs.
Diffstat (limited to 'doc/docs/pt-br')
| -rw-r--r-- | doc/docs/pt-br/doc/advanced/macro.md | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/doc/docs/pt-br/doc/advanced/macro.md b/doc/docs/pt-br/doc/advanced/macro.md index 18d33e0..d1025d1 100644 --- a/doc/docs/pt-br/doc/advanced/macro.md +++ b/doc/docs/pt-br/doc/advanced/macro.md | |||
| @@ -228,6 +228,62 @@ print "Valid enum type:", $BodyType Static | |||
| 228 | 228 | ||
| 229 | </YueDisplay> | 229 | </YueDisplay> |
| 230 | 230 | ||
| 231 | ## Gerando código Yue em múltiplas linhas | ||
| 232 | |||
| 233 | Quando uma macro retorna código Yue em múltiplas linhas, não é recomendado usar uma string multilinha entre aspas. Prefira `-> |`. | ||
| 234 | |||
| 235 | Uma string entre aspas preserva o texto literal, enquanto uma string multilinha estilo YAML remove a indentação inicial comum. Isso normalmente deixa os blocos Yue gerados mais estáveis, especialmente quando o código gerado contém comentários ou blocos aninhados. | ||
| 236 | |||
| 237 | ```yuescript | ||
| 238 | macro default_conf = (conf) -> " | ||
| 239 | -- useful; only set once | ||
| 240 | #{conf}.identity = 'LOVE' | ||
| 241 | #{conf}.version = \"11.5\" | ||
| 242 | " | ||
| 243 | |||
| 244 | love.conf = (t) -> | ||
| 245 | $default_conf t | ||
| 246 | ``` | ||
| 247 | |||
| 248 | <YueDisplay> | ||
| 249 | |||
| 250 | ```yue | ||
| 251 | macro default_conf = (conf) -> " | ||
| 252 | -- useful; only set once | ||
| 253 | #{conf}.identity = 'LOVE' | ||
| 254 | #{conf}.version = \"11.5\" | ||
| 255 | " | ||
| 256 | |||
| 257 | love.conf = (t) -> | ||
| 258 | $default_conf t | ||
| 259 | ``` | ||
| 260 | |||
| 261 | </YueDisplay> | ||
| 262 | |||
| 263 | ```yuescript | ||
| 264 | macro default_conf = (conf) -> | | ||
| 265 | -- useful; only set once | ||
| 266 | #{conf}.identity = 'LOVE' | ||
| 267 | #{conf}.version = "11.5" | ||
| 268 | |||
| 269 | love.conf = (t) -> | ||
| 270 | $default_conf t | ||
| 271 | ``` | ||
| 272 | |||
| 273 | <YueDisplay> | ||
| 274 | |||
| 275 | ```yue | ||
| 276 | macro default_conf = (conf) -> | | ||
| 277 | -- useful; only set once | ||
| 278 | #{conf}.identity = 'LOVE' | ||
| 279 | #{conf}.version = "11.5" | ||
| 280 | |||
| 281 | love.conf = (t) -> | ||
| 282 | $default_conf t | ||
| 283 | ``` | ||
| 284 | |||
| 285 | </YueDisplay> | ||
| 286 | |||
| 231 | ## Validação de argumentos | 287 | ## Validação de argumentos |
| 232 | 288 | ||
| 233 | Você pode declarar os tipos de nós AST esperados na lista de argumentos e verificar se os argumentos da macro recebidos atendem às expectativas em tempo de compilação. | 289 | Você pode declarar os tipos de nós AST esperados na lista de argumentos e verificar se os argumentos da macro recebidos atendem às expectativas em tempo de compilação. |
