%%
%% This is file `ucharcat.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% ucharcat.dtx  (with options: `package')
%% 
%% Source File: textcase.dtx
%% Copyright 2015 David Carlisle
%%
%% This file may be distributed under the terms of the LPPL.
%% See README for details.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{ucharcat}
       [2015/11/19 v0.03 ucharcat for luaLaTeX  (DPC)]
\ifx\directlua\@undefined
\ifx\Ucharcat\@undefined
\ifx\XeTeXinterchartokenstate\@undefined
\PackageError{ucharcat}
{\string\Ucharcat\space may only be used with xetex and luatex}
{skipping package}
\else
\PackageError{ucharcat}
{\string\Ucharcat\space is defined in xetex releases from 2015 only}
{skipping package}
\fi
\fi
\expandafter\endinput
\fi
\ifx\newcatcodetable\@undefined
  \chardef\ucharcat@table"7000
  \directlua{tex.enableprimitives("",{"initcatcodetable"})}
  \initcatcodetable\ucharcat@table
\else
  \newcatcodetable\ucharcat@table
\fi
\directlua{%
local nt = newtoken or token
function UcharcatLua()
  local mych = nt.scan_int()
  local mycat = nt.scan_int()
  tex.setcatcode(\the\numexpr\ucharcat@table\relax,mych,mycat)
  tex.sprint(\the\numexpr\ucharcat@table\relax,unicode.utf8.char(mych))
end
}
\def\Ucharcat{\directlua{UcharcatLua()}}
\endinput
%%
%% End of file `ucharcat.sty'.
