Spiegel

Een C ++ -bibliotheek om u te helpen met uw ontwikkeling.
Download nu

Spiegel Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • Freeware / $0.00
  • Taal:
  • English
  • Naam uitgever:
  • Imagine Interactive Systems
  • Bestandsgrootte:
  • 350K

Spiegel Tags


Spiegel Beschrijving

Biedt zowel compile-time en run-time meta-data en beschrijft gemeenschappelijke C ++ constructies Doel van de spiegel bibliotheek zowel compile-time en run-time metadata beschrijven gemeenschappelijke C ++ constructies zoals naamruimten types verstrekken (en als belangrijk speciaal geval typedef-ined types), klassen en hun basis klassen en lidvariabelen, constructeurs, etc. en een uniforme en generieke interfaces voor hun introspectie. Omdat de standaard C ++ biedt slechts een zeer beperkte set van meta-informatie te bouwen op, de belangrijkste nadeel van deze bibliotheek is, dat namespace, types, klassen, etc. moeten worden geregistreerd voordat ze worden weerspiegeld kunnen. Echter Mirror probeert om het proces van het registreren van eenvoudig te maken door middel van een set van gebruiksvriendelijke registreren macro's en heeft de inheemse en veel van de andere voorkomende soorten, klassen, templates en namespaces vooraf geregistreerd. Daarnaast wordt een aantal tools voor het automatisch / semi-automatische registratie wordt gewerkt. Eenmaal geregistreerd de meta-data kunnen worden gebruikt in een groot aantal situaties. Mirror is ontworpen met het principe van de gelaagdheid in het achterhoofd en probeert zo minder indringend mogelijk te zijn. Nieuwe of bestaande klassen hoeven niet direct te worden ontworpen ondersteunen Spiegel en geen spiegel-gerelateerde code is nodig in de klasse definitie, voor zover een aantal algemene richtlijnen worden gevolgd. Spiegel levert compilatie reflectielaag die kan worden gebruikt bij het compileren meta-programma en een runtime-laag met een soortgelijke, maar dynamisch interface op basis van het compileren meta-data. Functies: * Statische en dynamische weergave van de volgende base-level taal constructies: o namespaces o types o typedefs o klassen o class templates * Statische en dynamische bereik op basis traversals van: o namespace leden als geneste namespaces, klassen, typedefs, sjablonen, enz. o klasseovererving waaronder het type overerving specifier, toegangsspecificatie van de afgeleide en de basisklasse in de overerving o class lidvariabelen verschaffen informaties geheugenklasse specifier, toegangsspecificatie, omvang, type en de naam van het lid o alle klasse lidvariabelen waaronder die geërfd van basisklassen o klasse lid functies statische / dynamische] o constructeurs o conversie operators o template parameters o functieparameters zoals het type en de naam van de parameter * De standaard generator nut * Andere compile-time meta-programmering utilities * Naam getter functies voor alle genoemde taalconstructies zoals namespaces, soorten (met inbegrip van afgeleide types zoals pointers, referenties, arrays, functies, CV-gekwalificeerde types en combinaties daarvan), typedefs, lidvariabelen, etc. o basisnamen zonder de geneste naam bestekschrijvers o volledige namen met de geneste naam bestekschrijvers o lokale namen van geneste genaamd constructen die delen van de volledige geneste naam specifier ontdaan weg gebaseerd op het gebruik van de Mirror's met behulp van de richtlijn op de mondiale reikwijdte of de plaatselijke scopes kan hebben * Generic functies voor het ophalen en instellen van de waarde van een klasse lid variabele wanneer gegeven een verwijzing naar de klasse waartoe het lid variabele behoort. * Reflection meta-object, categoriseren en tag dispatching. Tagtypen voor verschillende meta-objecten kunnen worden gebruikt bij het compileren functie overbelasting of sjabloon specialisatie verzender en meta-object tag opsommingen in run time vertakking basis van het type van het meta-object. * Hogere-level utilities op basis van de fundamentele meta-data: o Factory generatoren mogelijk maakt om gemakkelijk te maken in hoge mate aanpasbaar, gespecialiseerd in de fabriek klassen die de noodzakelijke parameterwaarden verzamelen, plukken en bel de juiste aannemer in een door de gebruiker opgegeven manier (uit een GUI, van een RDB dataset, uit een XML-bestand, etc.) creëren exemplaren van een bepaald type. * Annotatie van meta-objecten met tag types. Verschillende meta objecten (momenteel alleen typen) kan worden gelabeld per vooraf gedefinieerde of toepassingsspecifieke tagtypen die kunnen worden gebruikt in meta-programma's voor de activering van gespecialiseerde verwerking. geplande functies * Hogere-level utilities op basis van de fundamentele meta-data: o Objectinspecteurs vergelijkbaar met de fabrieksgeneratorenhulpprogramma, die toestaan klassen op te bouwen voor inspectie van de structuur (en waarden waar van toepassing) van een klasse, type, naamruimte, ledenvariabele enz. Op een door de gebruiker gedefinieerde manier (in een GUI voor voorbeeld). o Abstracte fabrieksgenerator, waardoor instanties van verschillende afgeleide klassen met een gemeenschappelijke basisklasse kunnen creëren. o Traversals van naamruimten, klassen, enz. Voor (de) serialisatie-achtige operaties. o Toegang tot semantische gegevens die de individuele taalconstructen conceptueel beschrijven. Dit zou bijvoorbeeld toestaan om agenten in staat te stellen objecten van andere toepassingen te gebruiken zonder toegang tot hun bronnen die deze klassen definiëren. * Automatisch (of semi-automatisch) registreren, met behulp van verschillende gewone gereedschappen en toolchains zoals (Doxygen, GCC2XML, OpenC ++, XSLT, enz.) Of gespecialiseerde draagbare parsers en transformatoren voor het genereren van de broncode die nodig is voor het registreren van de constructen op basisniveau met spiegel . o kan in sommige gevallen volledig automatisch zijn o kan annotaties gebruiken die zijn ingebed in opmerkingen (zoals Doxygen doet)


Spiegel Gerelateerde software

Unidac

UNIDAC is een krachtige bibliotheek met niet-functionele Cross-database-toegangscomponenten voor Delphi, Delphi voor .NET en C ++ Builder. De Unified Access is beschikbaar voor Oracle, Microsoft SQL Server, MySQL, in ...

107 7099K

Downloaden