diff options
author | Karl Berry <karl@freefriends.org> | 2022-11-26 21:01:07 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-11-26 21:01:07 +0000 |
commit | 2a8d872f588eafe3574df11a6c27ba7a1ab11750 (patch) | |
tree | 82857e6c81cebe81dcc6da6804065035537f10de /Master/texmf-dist/tex/latex/lt3rawobjects | |
parent | af782df69c38f38e1a6db424ddffce7fd65aabe8 (diff) |
lt3rawobjects (26nov22)
git-svn-id: svn://tug.org/texlive/trunk@65109 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/lt3rawobjects')
-rw-r--r-- | Master/texmf-dist/tex/latex/lt3rawobjects/lt3rawobjects.sty | 49 |
1 files changed, 38 insertions, 11 deletions
diff --git a/Master/texmf-dist/tex/latex/lt3rawobjects/lt3rawobjects.sty b/Master/texmf-dist/tex/latex/lt3rawobjects/lt3rawobjects.sty index ad7283daaef..7cc46e26279 100644 --- a/Master/texmf-dist/tex/latex/lt3rawobjects/lt3rawobjects.sty +++ b/Master/texmf-dist/tex/latex/lt3rawobjects/lt3rawobjects.sty @@ -26,7 +26,7 @@ %% \NeedsTeXFormat{LaTeX2e} \RequirePackage{expl3}[2022-04-10] -\ProvidesExplPackage{lt3rawobjects}{2022/08/03}{ 2.0 }{Objects and proxies in LaTeX3} +\ProvidesExplPackage{lt3rawobjects}{2022/11/26}{ 2.1 }{Objects and proxies in LaTeX3} \str_const:Nn \c_object_local_str {loc} \str_const:Nn \c_object_global_str {glo} \str_const:Nn \c_object_public_str {pub} @@ -306,6 +306,32 @@ \cs_generate_variant:Nn \object_member_use:nn { Vn } +\cs_new_protected:Nn \object_member_set:nnnn + { + \__rawobjects_force_scope:n { #1 } + \cs_if_exist_use:cT + { + #3 _ \__rawobjects_scope_pfx:n { #1 } set:cn + } + { + { \object_member_adr:nnn { #1 }{ #2 }{ #3 } } { #4 } + } + } + +\cs_generate_variant:Nn \object_member_set:nnnn { Vnnn, nnvn } + +\cs_new_protected:Nn \object_member_set:nnn + { + \object_member_set_eq:nnvn { #1 }{ #2 } + { + \object_rcmember_adr:nnn { #1 } + { #2 _ type }{ str } + } { #3 } + } + +\cs_generate_variant:Nn \object_member_set:nnn { Vnn } + + \cs_new_protected:Nn \object_member_set_eq:nnnN { \__rawobjects_force_scope:n { #1 } @@ -401,42 +427,43 @@ \cs_generate_variant:Nn \object_rcmember_use:nnn { Vnn } -\cs_new_protected:Nn \__rawobjects_const_create:nnnn +\cs_new_protected:Nn \object_newconst:nnnn { - \use:c { #1 _ const:cn } + \use:c { #3 _ const:cn } { - \object_ncmember_adr:nnn { #2 }{ #3 }{ #1 } + \object_ncmember_adr:nnn { #1 }{ #2 }{ #3 } } { #4 } } + \cs_new_protected:Nn \object_newconst_tl:nnn { - \__rawobjects_const_create:nnnn { tl }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ tl }{ #3 } } \cs_new_protected:Nn \object_newconst_str:nnn { - \__rawobjects_const_create:nnnn { str }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ str }{ #3 } } \cs_new_protected:Nn \object_newconst_int:nnn { - \__rawobjects_const_create:nnnn { int }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ int }{ #3 } } \cs_new_protected:Nn \object_newconst_clist:nnn { - \__rawobjects_const_create:nnnn { clist }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ clist }{ #3 } } \cs_new_protected:Nn \object_newconst_dim:nnn { - \__rawobjects_const_create:nnnn { dim }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ dim }{ #3 } } \cs_new_protected:Nn \object_newconst_skip:nnn { - \__rawobjects_const_create:nnnn { skip }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ skip }{ #3 } } \cs_new_protected:Nn \object_newconst_fp:nnn { - \__rawobjects_const_create:nnnn { fp }{ #1 }{ #2 }{ #3 } + \object_newconst:nnnn { #1 }{ #2 }{ fp }{ #3 } } \cs_generate_variant:Nn \object_newconst_tl:nnn { Vnn } |