|
310 | 310 |
|
311 | 311 | % Used to specify function type parameter lists with named optionals.
|
312 | 312 | % Arguments: Parameter type, number of required parameters,
|
313 |
| -% name of optional parameters, number of optional parameters. |
314 |
| -\newcommand{\FunctionTypeNamedArguments}[4]{% |
315 |
| - \List{#1}{1}{#2},\ \{\TripleList{r}{#1}{#3}{{#2}+1}{{#2}+{#4}}\}} |
| 313 | +% name of optional parameters, number of optional parameters, |
| 314 | +% name of `required` symbol. |
| 315 | +\newcommand{\FunctionTypeNamedArguments}[5]{% |
| 316 | + \List{#1}{1}{#2},\ \{\TripleList{#5}{#1}{#3}{{#2}+1}{{#2}+{#4}}\}} |
316 | 317 |
|
317 | 318 | \newcommand{\FunctionTypeNamedArgumentsStd}{%
|
318 |
| - \FunctionTypeNamedArguments{T}{n}{x}{k}} |
| 319 | + \FunctionTypeNamedArguments{T}{n}{x}{k}{r}} |
319 | 320 |
|
320 | 321 | % Used to specify function types with named parameters:
|
321 | 322 | % Arguments: Return type, spacer, type parameter name, bound name,
|
322 | 323 | % number of type parameters, parameter type, number of required parameters,
|
323 |
| -% name of optional parameters, number of optional parameters. |
| 324 | +% name of optional parameters, number of optional parameters, |
| 325 | +% name of `required` symbol. |
324 | 326 | \newcommand{\FunctionTypeNamed}[9]{%
|
325 | 327 | \FunctionType{#1}{#2}{#3}{#4}{#5}{\\
|
326 |
| - \mbox{}\qquad\FunctionTypeNamedArguments{#6}{#7}{#8}{#9}}} |
| 328 | + \mbox{}\qquad\FunctionTypeNamedArguments{#6}{#7}{#8}{#9}{#10}}} |
327 | 329 |
|
328 | 330 | % Same as \FunctionType except suitable for inline usage, hence omitting
|
329 | 331 | % the spacer argument.
|
330 |
| -\newcommand{\RawFunctionTypeNamed}[8]{% |
| 332 | +\newcommand{\RawFunctionTypeNamed}[9]{% |
331 | 333 | \RawFunctionType{#1}{#2}{#3}{#4}{%
|
332 |
| - \FunctionTypeNamedArguments{#5}{#6}{#7}{#8}}} |
| 334 | + \FunctionTypeNamedArguments{#5}{#6}{#7}{#8}{#9}}} |
333 | 335 |
|
334 | 336 | % Used to specify function types with no optional parameters:
|
335 | 337 | % Arguments: Return type, spacer, type parameter name, bound name,
|
|
345 | 347 | \RawFunctionTypePositional{#1}{X}{B}{s}{T}{n}{k}}
|
346 | 348 |
|
347 | 349 | \newcommand{\FunctionTypeNamedStd}[1]{%
|
348 |
| - \FunctionTypeNamed{#1}{ }{X}{B}{s}{T}{n}{x}{k}} |
| 350 | + \FunctionTypeNamed{#1}{ }{X}{B}{s}{T}{n}{x}{k}{r}} |
349 | 351 |
|
350 | 352 | \newcommand{\RawFunctionTypeNamedStd}[1]{%
|
351 |
| - \RawFunctionTypeNamed{#1}{X}{B}{s}{T}{n}{x}{k}} |
| 353 | + \RawFunctionTypeNamed{#1}{X}{B}{s}{T}{n}{x}{k}{r}} |
352 | 354 |
|
353 | 355 | \newcommand{\FunctionTypeAllRequiredStd}[1]{%
|
354 | 356 | \FunctionTypeAllRequired{#1}{ }{X}{B}{s}{T}{n}}
|
|
357 | 359 | \FunctionTypePositional{#1}{\\}{X}{B}{s}{T}{n}{k}}
|
358 | 360 |
|
359 | 361 | \newcommand{\FunctionTypeNamedStdCr}[1]{%
|
360 |
| - \FunctionTypeNamed{#1}{\\}{X}{B}{s}{T}{n}{x}{k}} |
| 362 | + \FunctionTypeNamed{#1}{\\}{X}{B}{s}{T}{n}{x}{k}{r}} |
361 | 363 |
|
362 | 364 | \newcommand{\FunctionTypeNamedStdArgCr}[1]{%
|
363 |
| - \FunctionTypeNamedArgCr{#1}{ }{X}{B}{s}{T}{n}{x}{k}} |
| 365 | + \FunctionTypeNamedArgCr{#1}{ }{X}{B}{s}{T}{n}{x}{k}{r}} |
364 | 366 |
|
365 | 367 | \newcommand{\FunctionTypeAllRequiredStdCr}[1]{%
|
366 | 368 | \FunctionTypeAllRequired{#1}{\\}{X}{B}{s}{T}{n}}
|
|
376 | 378 |
|
377 | 379 | % Judgment expressing that a subtype relation exists.
|
378 | 380 | \newcommand{\Subtype}[3]{\ensuremath{{#1}\vdash{#2}\,<:\,{#3}}}
|
379 |
| -\newcommand{\SubtypeStd}[2]{\Subtype{\Gamma}{#1}{#2}} |
| 381 | +\newcommand{\SubtypeStd}[2]{\Subtype{\Delta}{#1}{#2}} |
380 | 382 | % Subtype judgment where the environment is omitted (NE: "no environment").
|
381 | 383 | \newcommand{\SubtypeNE}[2]{\ensuremath{{#1}\,<:\,{#2}}}
|
382 | 384 |
|
383 | 385 | % Judgment expressing that a supertype relation exists.
|
384 | 386 | \newcommand{\Supertype}[3]{\ensuremath{{#1}\vdash{#2}\,:>\,{#3}}}
|
385 |
| -\newcommand{\SupertypeStd}[2]{\Supertype{\Gamma}{#1}{#2}} |
| 387 | +\newcommand{\SupertypeStd}[2]{\Supertype{\Delta}{#1}{#2}} |
386 | 388 |
|
387 | 389 | % Semantic function delivering the superinterfaces of a class.
|
388 | 390 | \newcommand{\Superinterfaces}[1]{\ensuremath{\metavar{Superinterfaces}({#1})}}
|
|
0 commit comments