Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  DummyImplementations.gd   Sprache: unbekannt

 
# SPDX-License-Identifier: GPL-2.0-or-later
# CAP: Categories, Algorithms, Programming
#
# Declarations
#

#! @Chapter Dummy implementations
#! 
#! A dummy implementation of a concept seems to provide an interface for the concept, but calling any operation in this interface will simply signal an error.
#! Hence, when using a dummy implementation, we can be sure that we only rely on the abstract interface but not on any implementation details,
#! for the simple reason that there is no actual implementation.
#! This is useful for testing or compilation against a generic implementation of a concept.

####################################
#
#! @Section Dummy rings
#
####################################

####################################
#
# GAP filters
#
####################################

#= comment for Julia
# IsRingElement(WithOne) is a union of types, which we cannot subtype

#! @Description
#!  The ⪆ filter of dummy rings.
DeclareFilter( "IsDummyRing",
        IsRingWithOne );

#! @Description
#!  The ⪆ filter of elements of a dummy ring.
DeclareFilter( "IsDummyRingElement",
        IsRingElementWithOne );

#! @Description
#!  The ⪆ filter of dummy commutative rings.
DeclareFilter( "IsDummyCommutativeRing",
        IsDummyRing );

#! @Description
#!  The ⪆ filter of elements of a dummy commutative ring.
DeclareFilter( "IsDummyCommutativeRingElement",
        IsDummyRingElement );

#! @Description
#!  The ⪆ filter of dummy fields.
DeclareFilter( "IsDummyField",
        IsDummyCommutativeRing );

#! @Description
#!  The ⪆ filter of elements of a dummy field.
DeclareFilter( "IsDummyFieldElement",
        IsDummyCommutativeRingElement );
# =#

####################################
#
# Constructors
#
####################################

#! @Description
#! @Arguments
#! @Returns a dummy ring
DeclareGlobalFunction( "DummyRing" );

#! @Description
#! @Arguments
#! @Returns a dummy commutative ring
DeclareGlobalFunction( "DummyCommutativeRing" );

#! @Description
#! @Arguments
#! @Returns a dummy field
DeclareGlobalFunction( "DummyField" );

####################################
#
#! @Section Dummy categories
#
####################################

####################################
#
# GAP categories
#
####################################

#! @Description
#!  The ⪆ category of a dummy CAP category.
DeclareCategory( "IsDummyCategory",
        IsCapCategory );

#! @Description
#!  The ⪆ category of objects in a dummy CAP category.
DeclareCategory( "IsDummyCategoryObject",
        IsCapCategoryObject );

#! @Description
#!  The ⪆ category of morphisms in a dummy CAP category.
DeclareCategory( "IsDummyCategoryMorphism",
        IsCapCategoryMorphism );

####################################
#
# Constructors
#
####################################

#! @Description
#!  Creates a dummy category subject to the options given via <A>options</A>, which is a record passed on to <Ref Oper="CategoryConstructor" Label="for IsRecord" />.
#!  Note that the options `{category,object,morphism}_filter` will be set to `IsDummyCategory{,Object,Morphism}` and the options `{object,morphism}_{constructor,datum}` and
#!  `create_func_*` will be set to dummy implementations (throwing errors when actually called).
#!  The dummy category will pretend to support empty limits by default.
#! @Arguments options
#! @Returns a category
DeclareOperation( "DummyCategory",
                  [ IsRecord ] );

[ Dauer der Verarbeitung: 0.14 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge