read_async


Description:

public abstract async string read_async () throws Error

Read file contents asynchronously and update buffer.

Reads file contents asynchronously and updates buffer. For GTK buffers, checks file modification time and reloads from disk if file was modified since last read. For dummy buffers, always reads from disk.

GtkSourceFileBuffer Behavior

  • Tracks last_read_timestamp (Unix timestamp)
  • On read_async(), compares file modification time vs last_read_timestamp
  • If file was modified since last read, reloads buffer from disk
  • Updates last_read_timestamp after successful read
  • Returns current buffer contents

DummyFileBuffer Behavior

  • Always reads from disk
  • Updates lines array cache
  • Returns file contents

Usage:

try {
var contents = yield file.buffer.read_async();
// Use contents...
} catch (Error e) {
// Handle error (file not found, permission denied, etc.)
}

Returns:

File contents as string

Exceptions:

Error

if file cannot be read