Hvad er ADS-filformatet?
En .ads-fil er en Ada-pakkespecifikation - grænsefladedelen af en Ada-pakke. Under GNAT-compilerens navngivningskonvention (de facto-standarden i Ada-økosystemet) er hver Ada-pakke opdelt i to filer: specifikationen i .ads og implementeringskroppen i en .adb-fil.
.ads-filen erklærer, hvad der er offentligt synligt for andre kompilationsenheder: typer, undertyper, konstanter, underprogramsignaturer (procedure- og funktionsprofiler), opgavetyper og generiske parametre. Den indeholder ingen eksekverbar kode eller underprogramkroppe - kun de erklæringer, der udgør den kontrakt, som andre pakker afhænger af.
Syntaktisk åbner en specifikation med package <Name> is og lukker med end <Name>;. Kontekstklausuler (with- og use-sætninger) øverst viser de pakker, som specifikationen afhænger af. Ada-kommentarer begynder med --.
Formatet er almindelig UTF-8 (eller ASCII) tekst med MIME-typen text/x-ada. Der er ingen magic bytes; filer identificeres ved deres Ada-kildestruktur. Den anvendte Ada-dialekt - Ada 83, 95, 2005, 2012 eller Ada 2022 (ISO/IEC 8652:2023) - styres af GNAT-compilerflag som -gnat2022 eller en pragma Ada_2022 på kildeniveau.
.ads-filer åbnes i GNAT Studio, Visual Studio Code med Ada/SPARK-udvidelsen eller enhver almindelig teksteditor. GNAT-værktøjskæden kompilerer dem sammen med deres .adb-kroppe; build-koordinering håndteres af en .gpr-projektfil.
Sikkerhed og tryghed
RISIKO: LOWEn .ads-fil er almindelig Ada-kildetekst og kan ikke køre af sig selv, så det er sikkert at åbne en for at læse den. Den normale forsigtighed for enhver kildekode gælder: gennemse kode fra upålidelige kilder, før du kompilerer og kører den, da det omgivende projekt vil producere en eksekverbar fil. Der er ingen DRM, kryptering eller speciel håndtering - behandl den som enhver tekst-/kodefil. Installer kun GNAT-værktøjskæden fra officielle kilder (AdaCore/GCC).
Formatdetaljer
kort fortalt- Reklame- / ad-serving-fil - Nogle reklamesystemer og AdSense-relaterede værktøjer bruger .ads til reklameindhold eller ad-tag-filer; ikke relateret til Ada-kilde.
- Generisk «adressebog» / indstillingseksport - Enkelte ældre programmer gemmer indstillinger eller adressedata med en .ads-filendelse; identificeres ved det oprindelige program.
Programmer der åbner ADS-filer
Tekniske detaljer
dyb specifikation| Filtype | Almindelig tekst Ada-kilde - specifikationsdelen (grænsefladen) af en Ada-pakke |
| MIME-type | text/x-ada (accepteres også som text/plain) |
| Tekstkodning | UTF-8 eller ASCII; historisk Latin-1; GNAT-kodning kan vælges via -gnatiX-flag |
| Binær signatur | Ingen - almindelig tekst; identificeret ved Ada-nøgleordsstruktur (package <Name> is … end <Name>;) |
| Typisk filstørrelse | 1 KB - 100 KB (kun specifikationserklæringer; kroppe findes i den tilhørende .adb) |
| GNAT-navngivningsregel | Basenavnet skal matche pakkenavnet, med små bogstaver og punkter erstattet af bindestreger - f.eks. Ada.Containers mappes til ada-containers.ads |
| Struktur | Valgfrie with/use-kontekstklausuler, derefter package <Name> is, offentlige erklæringer, valgfri privat sektion, end <Name>; |
| Indholdsbegrænsning | Kun erklæringer - typer, undertyper, konstanter, underprogramprofiler, generiske elementer; ingen eksekverbar kode eller kroppe |
| Synlighedsmodel | Offentlig del er synlig for alle afhængige pakker; privat sektion er kun tilgængelig i pakken og dens underenheder |
| Sprogdialekt | Ada 83 / 95 / 2005 / 2012 / 2022 valgt via GNAT -gnatXX-flag eller pragma Ada_XXXX i kilden |
| Kompileret output | GNAT producerer en .ali (Ada Library Information) fil og objektfil (.o) for hvert kompileret .ads/.adb-par |
| Build-koordinering | GNAT-projektfil (.gpr) viser .ads-kilder og styrer kompilationsindstillinger pr. enhed |
| Platformunderstøttelse | Platformuafhængig: Linux, Windows, macOS og indlejrede mål (VxWorks, RTEMS, bare-metal ARM, RISC-V) |
| Compiler-økosystem | GNAT (GCC Ada-frontend, AdaCore), GNAT LLVM, PTC ObjectAda, Green Hills MULTI Ada |
| Udgivet | 1980 (Ada language); .ads/.adb naming from GNAT (early 1990s) |
| Seneste version | Ada 2022 (ISO/IEC 8652:2023) |
| Åben standard | Ja · royaltyfri |
| Specifikation | www.adaic.org |
ADS-konverteringer
Fællesskabets Q&A
spurgt af brugereIngen spørgsmål endnu - vær den første til at spørge om ADS-filer.