semantic_processor.d.ts 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. import { SemanticFont } from './semantic_meaning.js';
  2. import { SemanticNode } from './semantic_node.js';
  3. import { SemanticNodeFactory } from './semantic_node_factory.js';
  4. export declare class SemanticProcessor {
  5. private static readonly FENCE_TO_PUNCT_;
  6. private static readonly MML_TO_LIMIT_;
  7. private static readonly MML_TO_BOUNDS_;
  8. private static readonly CLASSIFY_FUNCTION_;
  9. private static readonly MATHJAX_FONTS;
  10. private static instance;
  11. funcAppls: {
  12. [key: string]: SemanticNode;
  13. };
  14. private factory_;
  15. static getInstance(): SemanticProcessor;
  16. static tableToMultiline(table: SemanticNode): SemanticNode;
  17. static number(node: SemanticNode): void;
  18. static classifyMultiline(multiline: SemanticNode): void;
  19. static classifyTable(table: SemanticNode): SemanticNode;
  20. private static detectCaleyTable;
  21. private static cayleySpacing;
  22. static proof(node: Element, semantics: string, parse: (p1: Element[]) => SemanticNode[]): SemanticNode;
  23. static findSemantics(node: Element, attr: string, opt_value?: string): boolean;
  24. static getSemantics(node: Element): {
  25. [key: string]: string;
  26. };
  27. static removePrefix(name: string): string;
  28. static separateSemantics(attr: string): {
  29. [key: string]: string;
  30. };
  31. private static matchSpaces_;
  32. private static getSpacer_;
  33. private static fenceToPunct_;
  34. private static classifyFunction_;
  35. private static propagateFunctionRole_;
  36. private static getFunctionOp_;
  37. private static tableToMatrixOrVector_;
  38. private static tableToVector_;
  39. private static binomialForm_;
  40. private static tableToMatrix_;
  41. private static tableToSquare_;
  42. private static getComponentRoles_;
  43. private static tableToCases_;
  44. private static rewriteFencedLine_;
  45. private static rowToLine_;
  46. private static assignRoleToRow_;
  47. private static nextSeparatorFunction_;
  48. private static meaningFromContent;
  49. private static numberRole_;
  50. private static exprFont_;
  51. static compSemantics(node: SemanticNode, field: string, sem: any): void;
  52. private static purgeFences_;
  53. private static rewriteFencedNode_;
  54. private static rewriteFence_;
  55. private static propagateFencePointer_;
  56. private static classifyByColumns_;
  57. private static isEndRelation_;
  58. private static isPureRelation_;
  59. private static computeColumns_;
  60. private static testColumns_;
  61. setNodeFactory(factory: SemanticNodeFactory): void;
  62. getNodeFactory(): SemanticNodeFactory;
  63. identifierNode(leaf: SemanticNode, font: SemanticFont, unit: string): SemanticNode;
  64. implicitNode(nodes: SemanticNode[]): SemanticNode;
  65. text(leaf: SemanticNode, type: string): SemanticNode;
  66. row(nodes: SemanticNode[]): SemanticNode;
  67. limitNode(mmlTag: string, children: SemanticNode[]): SemanticNode;
  68. tablesInRow(nodes: SemanticNode[]): SemanticNode[];
  69. mfenced(open: string | null, close: string | null, sepValue: string | null, children: SemanticNode[]): SemanticNode;
  70. fractionLikeNode(denom: SemanticNode, enume: SemanticNode, linethickness: string, bevelled: boolean): SemanticNode;
  71. tensor(base: SemanticNode, lsub: SemanticNode[], lsup: SemanticNode[], rsub: SemanticNode[], rsup: SemanticNode[]): SemanticNode;
  72. pseudoTensor(base: SemanticNode, sub: SemanticNode[], sup: SemanticNode[]): SemanticNode;
  73. font(font: string): SemanticFont;
  74. proof(node: Element, semantics: {
  75. [key: string]: string;
  76. }, parse: (p1: Element[]) => SemanticNode[]): SemanticNode;
  77. inference(node: Element, semantics: {
  78. [key: string]: string;
  79. }, parse: (p1: Element[]) => SemanticNode[]): SemanticNode;
  80. getLabel(_node: Element, children: Element[], parse: (p1: Element[]) => SemanticNode[], side: string): SemanticNode;
  81. getFormulas(node: Element, children: Element[], parse: (p1: Element[]) => SemanticNode[]): {
  82. conclusion: SemanticNode;
  83. premises: SemanticNode;
  84. };
  85. findNestedRow(nodes: Element[], semantic: string, opt_value?: string): Element;
  86. cleanInference(nodes: NodeList): Element[];
  87. operatorNode(node: SemanticNode): SemanticNode;
  88. private constructor();
  89. private implicitNode_;
  90. private infixNode_;
  91. private explicitMixed_;
  92. private concatNode_;
  93. private prefixNode_;
  94. private splitRoles;
  95. private splitOps;
  96. private splitSingles;
  97. private postfixNode_;
  98. private combineUnits_;
  99. private getMixedNumbers_;
  100. private getTextInRow_;
  101. private relationsInRow_;
  102. private operationsInRow_;
  103. private wrapPostfix;
  104. private wrapFactor;
  105. private addFactor;
  106. private operationsTree_;
  107. private appendOperand_;
  108. private appendDivisionOp_;
  109. private appendLastOperand_;
  110. private appendMultiplicativeOp_;
  111. private appendAdditiveOp_;
  112. private appendExistingOperator_;
  113. private getFencesInRow_;
  114. private fences_;
  115. private neutralFences_;
  116. private combineFencedContent_;
  117. private horizontalFencedNode_;
  118. private classifyHorizontalFence_;
  119. private setExtension_;
  120. private getPunctuationInRow_;
  121. private punctuatedNode_;
  122. private dummyNode_;
  123. private accentRole_;
  124. private accentNode_;
  125. private makeLimitNode_;
  126. private getFunctionsInRow_;
  127. private getFunctionArgs_;
  128. private getIntegralArgs_;
  129. private functionNode_;
  130. private bigOpNode_;
  131. private integralNode_;
  132. private functionalNode_;
  133. private fractionNode_;
  134. private scriptNode_;
  135. private findNestedRow_;
  136. }