UNPKG

@eagleoutice/flowr

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

29 lines (28 loc) 1.3 kB
import type { Socket } from './net'; import { DEFAULT_SLICING_PIPELINE } from '../../../core/steps/pipeline/default-pipelines'; import type { PipelineOutput } from '../../../core/steps/pipeline/pipeline'; import type { DeepPartial } from 'ts-essentials'; import type { KnownParser } from '../../../r-bridge/parser'; /** * Each connection handles a single client, answering to its requests. * There is no need to construct this class manually, {@link FlowRServer} will do it for you. */ export declare class FlowRServerConnection { private readonly socket; private readonly parser; private readonly name; private readonly logger; private readonly allowRSessionAccess; private readonly fileMap; constructor(socket: Socket, name: string, parser: KnownParser, allowRSessionAccess: boolean); private currentMessageBuffer; private handleData; private handleFileAnalysisRequest; private sendFileAnalysisResponse; private createPipelineExecutorForRequest; private handleSliceRequest; private handleRepl; private handleLineageRequest; private handleQueryRequest; } export declare function sanitizeAnalysisResults(results: Partial<PipelineOutput<typeof DEFAULT_SLICING_PIPELINE>>): DeepPartial<PipelineOutput<typeof DEFAULT_SLICING_PIPELINE>>;