% \iffalse meta-comment
%% File: plexpl3.dtx
%
%  Copyright (c) 2020-2022 Japanese TeX Development Community
%
%  This file is part of the pLaTeX2e system (community edition).
%  -------------------------------------------------------------
%
% \fi
%
%
% \iffalse
% \changes{v1.0}{2020/09/28}{$B=iHG!'(Bp\TeX{}$B$N>r7oJ8$rDj5A(B}
% \fi
%
% \iffalse
%<*driver>
\NeedsTeXFormat{pLaTeX2e}
\ProvidesFile{plexpl3.dtx}[2020/09/28 v1.0 expl3 additions]
\RequirePackage{plautopatch}
\documentclass[dvipdfmx,a4paper]{jltxdoc}
\GetFileInfo{plexpl3.dtx}
\author{Japanese \TeX\ Development Community}
\title{The \textsf{plexpl3} package}
\date{$B:n@.F|!'(B\filedate}
\begin{document}
  \newcommand\Lpack[1]{\textsf{#1}}
  \maketitle
  \DocInput{\filename}
\end{document}
%</driver>
% \fi
%
% \LaTeX3 (expl3)$B$GMQ0U$5$l$F$$$J$$!V(Bp\TeX{}$B7ONs$NFH<+5!G=!W$r(B
% expl3$B$NJ8K!$G;H$($k$h$&$K$9$k%3!<%I$G$9!#(B
% p\LaTeXe~2020-10-01$B$G?7@_$7$^$7$?!#(B
%
% \setcounter{StandardModuleDepth}{1}
% \StopEventually{}
%
% \section{$B%3!<%I(B}
%
% $B%Q%C%1!<%8$H$7$F@k8@$7$^$9!#(B
% $B$3$l$G!"(Bp\LaTeXe~2020-04-12$B0JA0$G$b(B
% \file{plexpl3.sty}$B$H(B\file{plexpl3.ltx}$B$@$1(B
% $BF~<j$9$l$PF1Ey$N5!G=$,;H$($^$9!#(B
%    \begin{macrocode}
%<*package>
\NeedsTeXFormat{pLaTeX2e}
\RequirePackage{expl3}
\ProvidesExplPackage{plexpl3}{2020-09-28}{1.0}
  {pTeX/upTeX-specific additions to expl3}
%</package>
%    \end{macrocode}
%
% \LaTeXe~2020-02-02$B0J9_$G$O(B\file{expl3}$B$,I8=`$G(B
% $B%U%)!<%^%C%H$KFI$_9~$^$l$F$$$^$9!#$3$N>l9g$O(B
% \file{plexpl3}$B$N5!G=$r%U%)!<%^%C%H$K<h$j9~$_$^$9!#(B
%    \begin{macrocode}
%<plcore>\ifdefined\ExplSyntaxOn %--- expl3 available BEGIN
%<plcore>\ExplSyntaxOn
%<*plcore|package>
\input plexpl3.ltx
%</plcore|package>
%<plcore>\ExplSyntaxOff
%<plcore>\fi                     %--- expl3 available END
%    \end{macrocode}
%
% \file{platexrelease}$B$N(Broll-forward$B$K$bEPO?$7$^$9!#(B
%    \begin{macrocode}
%<platexrelease>\plIncludeInRelease{2020/10/01}%
%<platexrelease>                   {plexpl3}{Pre-load plexpl3}%
%<platexrelease>\RequirePackage{plexpl3}
%<platexrelease>\plEndIncludeInRelease
%<platexrelease>\plIncludeInRelease{0000/00/00}%
%<platexrelease>                   {plexpl3}{Not loading plexpl3}%
%<platexrelease>% Nothing to do
%<platexrelease>\plEndIncludeInRelease
%    \end{macrocode}
%
% $B0J2<$N%3!<%I$O(B\file{plexpl3.ltx}$B$K=q$-=P$7$^$9!#(B
% $B%U%)!<%^%C%H$H%Q%C%1!<%8$+$i$N=EJ#FI$_9~$_$O6X;_$7$^$9!#(B
%    \begin{macrocode}
%<*code>
\cs_if_exist:NT \__platex_expl_loaded:
  {
    \GenericInfo{}
      {Skipping:~ plexpl3~ code~ already~ part~ of~ the~ format}%
    \endinput
  }
\cs_new:Npn \__platex_expl_loaded: {  }
%    \end{macrocode}
%
% \section{p\TeX{}$B7ONs$N>r7oJ8(B}
%
% p\TeX{}$B7ONs$N>r7oJ8$r(Bexpl3$B$NJ8K!$K$7$^$9!#(B
% \changes{v1.0}{2020/09/28}{$B=iHG!'(Bp\TeX{}$B$N>r7oJ8$rDj5A(B}
%    \begin{macrocode}
%% additions to l3box.dtx: writing directions (pTeX/upTeX-specific)
\cs_set_eq:NN \platex_direction_yoko: \tex_yoko:D
\cs_set_eq:NN \platex_direction_tate: \tex_tate:D
\cs_set_eq:NN \platex_direction_dtou: \tex_dtou:D
%
\prg_new_conditional:Npnn \platex_if_direction_yoko: { p, T, F, TF }
  { \tex_ifydir:D \prg_return_true: \else: \prg_return_false: \fi: }
\prg_new_conditional:Npnn \platex_if_direction_tate: { p, T, F, TF }
  { \tex_iftdir:D \prg_return_true: \else: \prg_return_false: \fi: }
\prg_new_conditional:Npnn \platex_if_direction_dtou: { p, T, F, TF }
  { \tex_ifddir:D \prg_return_true: \else: \prg_return_false: \fi: }
%
\prg_new_conditional:Npnn \platex_if_box_yoko:N #1 { p, T, F, TF }
  { \tex_ifybox:D #1 \prg_return_true: \else: \prg_return_false: \fi: }
\prg_new_conditional:Npnn \platex_if_box_tate:N #1 { p, T, F, TF }
  { \tex_iftbox:D #1 \prg_return_true: \else: \prg_return_false: \fi: }
\prg_new_conditional:Npnn \platex_if_box_dtou:N #1 { p, T, F, TF }
  { \tex_ifdbox:D #1 \prg_return_true: \else: \prg_return_false: \fi: }
%    \end{macrocode}
%
% $B0J>e$G$9!#(B
%    \begin{macrocode}
%</code>
%    \end{macrocode}
%
% \Finale
%
\endinput
