Μετάβαση στο περιεχόμενο
Ελληνικά

Τυπική βιβλιοθήκη

Η τεκμηρίωση περιγράφει το οριστικοποιημένο εύρος της πειραματικής προέκδοσης v0.0.18. Η πραγματική δημοσίευση και οι λήψεις καταγράφονται στα GitHub Releases. Αυτά τα βασικά σημεία εισόδου ελέγχθηκαν έναντι του πηγαίου κώδικα· δεν πρόκειται για εξαντλητική αναφορά API. Η σύμβαση σύνταξης ορίζει τη συμπεριφορά. Δείτε τον πίνακα υποστήριξης για τα όρια backend.

import fs from "std.fs"
import json from "std.json"
import { http, time } from "std"

Τα fs, http, config, task, pg, redis, mysql, bytes και net απαιτούν ρητές εισαγωγές. Κάποιες ιστορικές μονάδες εξακολουθούν να καλούνται απευθείας· τα νέα παραδείγματα προτιμούν ρητές εισαγωγές ώστε οι εξαρτήσεις να είναι σαφείς. Το std.task είναι εσωτερικός χώρος ονομάτων παρατήρησης και δοκιμών καταπόνησης, όχι API συντρέχουσας εκτέλεσης εφαρμογών.

Μονάδα Σκοπός Όρια που πρέπει να θυμάστε
std.string / μέθοδοι συμβολοσειρών Μήκος Unicode, μήκος byte, αναζήτηση, τεμαχισμός Τα εγγενή trim/lower/upper δεν έχουν υλοποίηση Unicode
std.array / μέθοδοι πινάκων Μήκος, αναζήτηση, νέοι πίνακες, map Η αποτυχία άμεσης δεικτοδότησης διαφέρει από το ανακτήσιμο try_get
std.object Αναζήτηση με ρητή εναλλακτική τιμή μέσω get_or Ένας απόντας συνηθισμένος δείκτης δεν δίνει εξ ορισμού null
std.json Αυστηρή κωδικοποίηση και αποκωδικοποίηση JSON Δεν υποστηρίζεται σε εγγενή Task και LLVM
std.fs Αρχεία, έλεγχοι ύπαρξης, λίστα καταλόγου Οι σχετικές διαδρομές επιλύονται από τον κατάλογο της τρέχουσας πηγής .ku
std.time Χρόνος, ημερομηνίες, διάρκειες, αναμονή Οι σύγχρονες αναμονές και οι αναμονές Task χρησιμοποιούν διαφορετικές διαδρομές εκτέλεσης
std.http Πελάτες HTTP, υπηρεσίες, αποκρίσεις Παραμένουν διαφορές backend και κύκλου ζωής· δεν είναι πλήρης γενική δικτυακή υλοποίηση Task
std.config Περιβάλλον και ρυθμίσεις Μην καταχωρίζετε πραγματικά διαπιστευτήρια στον πηγαίο κώδικα
std.pg / std.redis / std.mysql Ενοποιημένοι πελάτες με περιορισμένες δεξαμενές Μόνο εγγενώς· πραγματικός διακομιστής και όρια TLS απαιτούν ξεχωριστούς ελέγχους
std.bytes / std.net Δυαδικά δεδομένα, πελάτης TCP, προαιρετικό TLS Διαδρομή παραγόμενου εγγενούς C· το TLS απαιτεί αντίστοιχο πακέτο στόχου
std.lexer / std.parser Βοηθήματα αποσφαλμάτωσης μεταγλωττιστή Επιστρέφουν συνόψεις αποσφαλμάτωσης, όχι πλήρεις δημόσιες δομές Token / AST

Αυτές είναι υπογραφές τεκμηρίωσης. Το & δηλώνει υποστηριζόμενη λειτουργία παραμέτρου μόνο για ανάγνωση· το T! δηλώνει ανακτήσιμο αποτέλεσμα:

len(&value:any): int
str(&value:any): str
println(&value:any): null
string.len(&text:str): int
string.byte_len(&text:str): int
string.slice(text:str, start:int, end:int): str!
array.len(&values:[T]): int
array.try_get(values:[T], index:int): T!
fs.read(path:str): str!
fs.write(path:str, text:str): null!
fs.exists(path:str): bool
fs.read_dir(path:str): [str]!

Το "中😀".len() είναι 2 και το .byte_len() είναι 7. Το μήκος μετρά βαθμωτές τιμές Unicode· ο τεμαχισμός χρησιμοποιεί δείκτες χαρακτήρων αντί για byte UTF-8. Τα array.push και array.concat επιστρέφουν νέους πίνακες χωρίς να αλλάζουν τις εισόδους τους.

import fs from "std.fs"
fn main(): null! {
text = fs.read("message.txt")?
println(text)
return ok(null)
}

Πρώτα δημιουργήστε ένα message.txt UTF-8 δίπλα στην πηγή. Απόν αρχείο ή αποτυχημένη ανάγνωση επιστρέφει σφάλμα. Το παράδειγμα εξαρτάται από αυτό το αρχείο εισόδου. Τα try_read και try_write παραμένουν συμβατά ψευδώνυμα με τους ίδιους τύπους αποτελέσματος.

Το read_dir επιστρέφει ταξινομημένες διαδρομές με ανεξάρτητη κυριότητα, με όριο 10.000 εγγραφών και συνολικά 1.000.000 byte διαδρομών. Οι περιορισμένες εγγενείς λειτουργίες αρχείων Task χρησιμοποιούν σταθερή δεξαμενή παρασκηνίου. Αυτό δεν αποδεικνύει γενική αναμονή δικτύου μέσω του ίδιου μηχανισμού.

Τα μεταδεδομένα δημόσιας διεπαφής βρίσκονται στο src/stdlib/metadata.rs. Ελέγχονται μαζί με υλοποιήσεις και συμβάσεις. Ο ιστότοπος διατηρεί προς το παρόν χειροκίνητα επιλεγμένη αναφορά· δεν έχει επιβεβαιωθεί υπάρχουσα εντολή ku doc.

Detailed module references and runnable examples are currently available in English: