/// /// import { ArithmeticType, PotentiallyCompleteClassType } from "../../compilation/types"; import { ExpressionContext, ConstructDescription } from "../../compilation/contexts"; import { SuccessfullyCompiled, RuntimeConstruct } from "../CPPConstruct"; import { Expression, CompiledExpression, TypedExpression, t_TypedExpression } from "./Expression"; import { RuntimeExpression } from "./RuntimeExpression"; import { InputOperatorExpressionOutlet } from "../../../view/constructs/ExpressionOutlets"; import { ConstructOutlet } from "../../../view/constructs/ConstructOutlet"; import { CompiledTemporaryDeallocator } from "../TemporaryDeallocator"; import { ArithmeticBinaryOperatorExpressionASTNode } from "../../../ast/ast_expressions"; export declare class InputOperatorExpression extends Expression { readonly construct_type = "input_operator_expression"; readonly type: PotentiallyCompleteClassType; readonly valueCategory = "lvalue"; readonly left: TypedExpression; readonly right: Expression; readonly operator = ">>"; constructor(context: ExpressionContext, ast: ArithmeticBinaryOperatorExpressionASTNode, left: TypedExpression, right: Expression); createDefaultOutlet(this: CompiledInputOperatorExpression, element: JQuery, parent?: ConstructOutlet): InputOperatorExpressionOutlet; describeEvalResult(depth: number): ConstructDescription; } export interface TypedInputOperatorExpression extends InputOperatorExpression, t_TypedExpression { } export interface CompiledInputOperatorExpression extends TypedInputOperatorExpression, SuccessfullyCompiled { readonly temporaryDeallocator?: CompiledTemporaryDeallocator; readonly left: CompiledExpression; readonly right: CompiledExpression; } export declare class RuntimeInputOperatorExpression extends RuntimeExpression { readonly left: RuntimeExpression; readonly right: RuntimeExpression; private index; constructor(model: CompiledInputOperatorExpression, parent: RuntimeConstruct); protected upNextImpl(): void; protected stepForwardImpl(): void; }