snacc - Online w chmurze

To jest polecenie, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


snacc - ASN.1 do C, C++ lub kompilator tabel typu

STRESZCZENIE


przekąska [-h] [-P] [-t] [-e] [-d] [-p] [-f]
[-c | -C | -idl | -T ]
[-u ]
[-mf ]
[-l ]
[-meta] [-tcl ]
[-nowolat]


W razie zamówieenia projektu kompletny i aktualne dokumentacja, odnosić się do dotychczasowy przekąska – instrukcja obsługi.


OPIS


Snacc (Sample Neufeld Asn.1 to C/C++ Compiler) generuje kod źródłowy C lub C++ dla BER
procedury kodowania i dekodowania, a także procedury drukowania i darmowe dla każdego typu w danym
Moduły ASN.1. Alternatywnie, snacc może tworzyć tabele typów, które można wykorzystać do tabeli
oparte/interpretowane kodowanie i dekodowanie. Metody oparte na tabeli typów są zwykle wolniejsze
niż ich odpowiedniki w C lub C++, ale zwykle zużywają mniej pamięci (rozmiar tabeli w porównaniu z C/C++
kod obiektu).

Większość funkcji ASN.1990 z 1 roku jest analizowana, chociaż niektóre nie wpływają na wygenerowany kod.
W źródle ASN.1 przeprowadzane jest dość rygorystyczne sprawdzanie błędów; wszelkie wykryte błędy będą
być zgłaszane (wypisywane na stderr).

Każdy plik na liście plików ASN.1 powinien zawierać kompletny moduł ASN.1. Moduły ASN.1
które używają funkcji IMPORTOWANIA muszą być skompilowane razem (określ wszystkie niezbędne moduły w
listy plików ASN.1). Wygenerowane pliki źródłowe będą zawierać plik nagłówkowy każdego modułu
w kolejności wiersza poleceń. Dlatego ważne jest, aby zamawiać moduły od jak najmniej
zależny do najbardziej zależny od wiersza poleceń, aby uniknąć problemów z porządkowaniem typów.
Obecnie snacc zakłada, że ​​każdy plik ASN.1 podany w wierszu poleceń zależy od wszystkich
pozostałe w wierszu poleceń. Nie podejmuje się próby włączenia tylko plików nagłówkowych z
moduły, do których odwołuje się lista importu dla tego modułu.

Jeśli językiem docelowym jest C, snacc wygeneruje a .h i .c plik dla każdego określonego ASN.1
moduł. Jeśli językiem docelowym jest C++, snacc wygeneruje .h i .C plik dla każdego
moduł. Wygenerowane nazwy plików będą pochodzić z nazw modułów.

OPCJE


-h Pomoc. Wyświetla streszczenie przekąsek i wyjść.

-c Wygeneruj kod źródłowy C. Jest to domyślne zachowanie snacc. Tylko jeden z -c ,
-C or -T należy określić.

-C Generuj kod źródłowy C++.

-nowolat
Wygeneruj ``return *this'' po wywołaniu ``abort()''. (Niektóre zepsute kompilatory nie
wiedzieć o funkcjach ulotnych lub ich abort() nie jest poprawnie wpisany.)

-meta Wygeneruj metakod opisujący wygenerowane typy. Implikuje -C.

-tcl moduł.typ[,moduł.typ] Generuj kod dla interpretera Tcl gdzie moduł.typ jest
PDU najwyższego poziomu. Implikuje -meta.

-T filet
Powoduje to, że snacc generuje tabele typów i zapisuje je w podanym pliku.

-P Powoduje to, że snacc wypisuje przeanalizowane moduły ASN.1 na standardowe wyjście po tym, jak typy mają
zostały połączone, posortowane i przetworzone. Ta opcja jest przydatna do debugowania snacc i
obserwując modyfikacje, które snacc wykonuje na typach, aby wygenerować kod
prostsze.

-t Generuj definicje typów w języku docelowym dla każdego typu ASN.1.

-v Generuj definicje wartości w języku docelowym dla każdej wartości ASN.1. Obecnie
definicje wartości są ograniczone do liczb całkowitych, liczb logicznych i identyfikatorów obiektów.

-e Generuj procedury kodowania w języku docelowym dla każdego typu ASN.1.

-d Generuj procedury dekodowania w języku docelowym dla każdego typu ASN.1.

-p Generuj procedury drukowania w języku docelowym dla każdego typu ASN.1.

-f Generuj bezpłatne procedury w języku docelowym dla każdego typu ASN.1. Ta opcja
działa tylko wtedy, gdy językiem docelowym jest C.

Jeśli żaden z -T, -v, -mi, -D, -P, or -f opcje są podane w wierszu poleceń,
snacc zakłada, że ​​wszystkie z nich działają. Nie mają wpływu na tabelę typów
generacja.

-u filet
Przeczytaj definicje użytecznych typów z modułu ASN.1 w pliku filet do łączenia
cele. W przypadku niektórych specyfikacji ASN.1, takich jak SNMP, przydatne typy nie są
potrzebne. Typy w podanym pliku użytecznych typów są globalnie dostępne dla wszystkich
moduły; użyteczna definicja typu jest zastępowana przez lokalną lub jawnie zaimportowaną
wpisz o tej samej nazwie. Aktualna lista przydatnych typów to:
Deskryptor obiektu
Ciąg liczbowy
Ciąg do druku
TeletekstString
T61String
WideoTexString
Ciąg IA5
GraficznyString
ISO646Ciąg
Ogólny ciąg
Czas UTC
Uogólniony czas
ZEWNĘTRZNA

-mf numer
Powoduje to, że wygenerowane pliki źródłowe mają maksymalną długość numer
znaki, w tym ich sufiks. ten numer musi wynosić co najmniej 3. Ta opcja to
przydatne do obsługi systemów operacyjnych, które obsługują tylko krótkie nazwy plików. A
lepszym rozwiązaniem jest skrócenie nazwy każdego modułu ASN.1.

-l numer
Jest to dość niejasne, ale może być przydatne. Każdy błąd, który dekodery mogą zgłosić
otrzymuje numer identyfikacyjny. Numer numer to tam zaczynają się zmniejszać identyfikatory błędów
od ich przypisania do błędów. Wartość domyślna to -100, jeśli ta opcja nie jest
dany. Unikaj używania liczb z zakresu od -100 do 0, ponieważ mogą one kolidować z
identyfikatory błędów procedur bibliotecznych. Jeśli ponownie kompilujesz przydatne typy dla
wykorzystanie biblioteki -50. Innym zastosowaniem tej opcji jest integracja nowo wygenerowanego kodu
ze starszym kodem; jeśli zostanie wykonane poprawnie, identyfikatory błędów nie będą powodować konfliktu.

Korzystaj ze snacc online za pomocą usług onworks.net



Najnowsze programy online dla systemów Linux i Windows