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