C# Класс ICSharpCode.NRefactory.CSharp.CacheIndentEngine

Represents a decorator of an IStateMachineIndentEngine instance that provides logic for reseting and updating the engine on text changed events.
The decorator is based on periodical caching of the engine's state and delegating all logic behind indentation to the currently active engine.
Наследование: IStateMachineIndentEngine
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
CacheIndentEngine ( CacheIndentEngine prototype ) : ICSharpCode.NRefactory.Editor

Creates a new CacheIndentEngine instance from the given prototype.

CacheIndentEngine ( IStateMachineIndentEngine decoratedEngine, int cacheRate = 2000 ) : ICSharpCode.NRefactory.Editor

Creates a new CacheIndentEngine instance.

Clone ( ) : IStateMachineIndentEngine
GetEngine ( int offset ) : IStateMachineIndentEngine
Push ( char ch ) : void
Reset ( ) : void
ResetEngineToPosition ( int offset ) : void

Resets the engine to offset. Clears all cached engines after the given offset.

Update ( int position ) : void If the position is negative, the engine will update to: document.TextLength + (offset % document.TextLength+1) Otherwise it will update to: offset % document.TextLength+1

Приватные методы

Метод Описание
ICloneable ( ) : object
IDocumentIndentEngine ( ) : IDocumentIndentEngine

Описание методов

CacheIndentEngine() публичный Метод

Creates a new CacheIndentEngine instance from the given prototype.
public CacheIndentEngine ( CacheIndentEngine prototype ) : ICSharpCode.NRefactory.Editor
prototype CacheIndentEngine /// A CacheIndentEngine instance. ///
Результат ICSharpCode.NRefactory.Editor

CacheIndentEngine() публичный Метод

Creates a new CacheIndentEngine instance.
public CacheIndentEngine ( IStateMachineIndentEngine decoratedEngine, int cacheRate = 2000 ) : ICSharpCode.NRefactory.Editor
decoratedEngine IStateMachineIndentEngine /// An instance of to which the /// logic for indentation will be delegated. ///
cacheRate int /// The number of chars between caching. ///
Результат ICSharpCode.NRefactory.Editor

Clone() публичный Метод

public Clone ( ) : IStateMachineIndentEngine
Результат IStateMachineIndentEngine

GetEngine() публичный Метод

public GetEngine ( int offset ) : IStateMachineIndentEngine
offset int
Результат IStateMachineIndentEngine

Push() публичный Метод

public Push ( char ch ) : void
ch char
Результат void

Reset() публичный Метод

public Reset ( ) : void
Результат void

ResetEngineToPosition() публичный Метод

Resets the engine to offset. Clears all cached engines after the given offset.
public ResetEngineToPosition ( int offset ) : void
offset int
Результат void

Update() публичный Метод

If the position is negative, the engine will update to: document.TextLength + (offset % document.TextLength+1) Otherwise it will update to: offset % document.TextLength+1
public Update ( int position ) : void
position int
Результат void