← ClaudeAtlas

advpl-tlpp-named-paramslisted

TLPP suporta named arguments na chamada via operador `=` (igualdade). Permite ordem livre, omissão de opcionais e código autodocumentado. Liberado em AppServer 20.3.2.0+ (funções/métodos) e 24.3.1.0+ (classes via New()). Use ao escrever ou refatorar chamadas TLPP com 3+ parâmetros, parâmetros opcionais, ou ao modernizar Static Functions legadas.
JoniPraia/plugadvpl · ★ 12 · Data & Documents · score 66
Install: claude install-skill JoniPraia/plugadvpl
# advpl-tlpp-named-params — Parâmetros Nomeados em TLPP Recurso da linguagem TLPP (não disponível em ADVPL clássico) que permite passar argumentos pelo nome formal usando o operador **`=`** (igualdade). Elimina placeholders `,,,nil,`, libera ordem livre e torna chamadas autodocumentadas. Skill complementar à [[advpl-tlpp]] (base TLPP: namespaces, classes, annotations, tipagem opcional). Esta skill foca no operador `=` no call site. ## Operador correto — `=` (igualdade) ```tlpp // CERTO: operador é '=' (igualdade) xParams(p2=b, p1=a, p6=f) // ERRADO: ':=' é atribuição, não funciona como named arg xParams(p2:=b) // compile error // ERRADO: ':' é send-message a objeto, não named arg xParams(p2:b) // compile error / interpretado como mensagem ``` Confusão comum porque outras linguagens usam `:=` ou `:` para named args. Em TLPP é literalmente `=`. ## Quando usar - Funções com 3 ou mais parâmetros. - Funções com parâmetros opcionais (omitir os irrelevantes). - Refactor de `Static Function` legada com assinatura longa. - Sempre que clareza > brevidade no call site. - Funções de validação/configuração que aceitam várias chaves opcionais. ## Quando N��O usar - Função com 1-2 parâmetros triviais (overhead sintático sem ganho). - Hot path com micro-otimização (overhead não medido, mas presumível). - Build do AppServer abaixo dos mínimos (ver tabela abaixo) — operador `=` não é reconhecido. ## Pré-requisitos | Requisito | Por quê | |-----------|---------|