Cirrus

From The Oxygene Language Wiki
Jump to: navigation, search

This is a Library topic for Cirrus
 

Introduction | Overview | Classes | Interfaces | Enums


Cirrus Logo 500px.png


Cirrus is an infrastructure for Aspect-oriented Programming (AOP), that is being added to the Oxygene compiler.

Cirrus extends the .NET attribute system with full support for Aspect-Oriented Programming, allowing the developer to separate concerns such as logging, security or other functionality orthogonal to the regular class hierarchy into Aspects that can be attached to classes or their members, as needed.

Functionality that otherwise would need to be reimplemented in various places across an application or framework can be encapsulated in reusable form and maintained in a single place. Oxygene allows developers both to reuse existing aspects written by third parties or included with the compiler’s standard aspect library, as well as to create their own Aspects.

Read more about Cirrus:



All Cirrus Library Topics: AnonymousMethodParameter ClassAnonymousMethodValue ClassAnonymousParameterValue ClassAnonymousResultValue ClassArrayCtorCallValue ClassArrayValue ClassAspects ClassAspectsHelper ClassAssignmentStatement ClassAutoInjectIntoTargetAttribute ClassBaseFilteredAspect ClassBeginLocalValue ClassBeginStatement ClassBetweenValue ClassBinaryOperator EnumBinaryValue ClassBreakStatement ClassCaseItem ClassCaseStatement ClassCaseValue ClassCaseValueItem ClassCirrusCirrus ClassesCirrus EnumsCirrus InterfacesCirrus IntroductionCirrus NamespaceCirrus NamespacesCirrus OverviewCirrus Statements NamespaceCirrus Values NamespaceCirrusException ClassCoalesceValue ClassConstructorOfValue ClassContinueStatement ClassDataValue ClassDefaultValue ClassElementKind EnumExceptLocalValue ClassExceptStatement ClassExceptStatementItem ClassExitStatement ClassFieldOfValue ClassFieldValue ClassForInLocalValue ClassForInStatement ClassForLocalValue ClassForStatement ClassGenericParameter0 ClassGenericParameter1 ClassGenericParameter2 ClassGenericParameter3 ClassGenericParameter4 ClassGenericParameter5 ClassGenericParameterTypeSpecifierAttribute ClassGenericParameterVariance EnumIArrayType InterfaceIAspectFilter InterfaceIAttribute InterfaceIAttributeDefinition InterfaceIAttributeDefinitionProvider InterfaceIAttributesProvider InterfaceIAutoGenMethodImplementationDecorator InterfaceIBaseAspect InterfaceIConstant InterfaceIConstantDefinition InterfaceIContext InterfaceIElementDefinition InterfaceIEvent InterfaceIEventDefinition InterfaceIEventImplementationDecorator InterfaceIEventInterfaceDecorator InterfaceIField InterfaceIFieldDefinition InterfaceIFieldInterfaceDecorator InterfaceIfStatement ClassIGenericInstantiationType InterfaceIGenericParametersProvider InterfaceIGenericParameterType InterfaceIGenericParameterTypeDefinition InterfaceIIfValue ClassIImplements InterfaceILocal InterfaceIManagedReferenceType InterfaceIMember InterfaceIMemberDefinition InterfaceIMethod InterfaceIMethodCallDecorator InterfaceIMethodDefinition InterfaceIMethodImplementationDecorator InterfaceIMethodInterfaceDecorator InterfaceIModifiedType InterfaceIMultiDimArrayType InterfaceInjectInterfaceAttribute ClassInjectIntoTargetAttribute ClassIParameter InterfaceIParameterDefinition InterfaceIPointerType InterfaceIPosition InterfaceIProperty InterfaceIPropertyDefinition InterfaceIPropertyImplementationDecorator InterfaceIPropertyInterfaceDecorator InterfaceIServices InterfaceISimpleArrayType InterfaceIType InterfaceITypeDefinition InterfaceITypeImplementationDecorator InterfaceITypeInterfaceDecorator InterfaceITypeReference InterfaceLengthValue ClassLocalValue ClassLocalVariable ClassLockingLocalValue ClassLockingStatement ClassMethodAspectAttribute ClassMethodGenericParameter0 ClassMethodGenericParameter1 ClassMethodGenericParameter2 ClassMethodGenericParameter3 ClassMethodGenericParameter4 ClassMethodGenericParameter5 ClassMethodOfValue ClassNamedLocalValue ClassNewValue ClassNilValue ClassNotNilValue ClassParameterizedValue ClassParameterModifier EnumParamValue ClassPlaceHolderStatement ClassProcPtrValue ClassProcValue ClassRaiseStatement ClassRangeValue ClassRepeatStatement ClassRequiredInTargetAttribute ClassRequiresBaseClassAttribute ClassRequiresGenericParametersAttribute ClassRequiresInterfaceAttribute ClassResultValue ClassSelfValue ClassSizeOfValue ClassStandaloneStatement ClassStatement ClassStatementDelegate ClassStatementKind EnumStatementValue ClassStaticValue ClassSubArrayValue ClassSurroundMethod EnumTryStatement ClassTypeDefKind EnumTypeKind EnumTypeOfValue ClassTypeValue ClassUnaryOperator EnumUnaryValue ClassUndefinedValue ClassUsingLocalValue ClassUsingStatement ClassValue ClassValueKind EnumVirtualMode EnumVisibility EnumWhileStatement ClassWithItem ClassWithLocalValue ClassWithStatement Class

Personal tools
Namespaces

Variants
Actions
Navigation
Getting Started
Sections
If you know
More
Toolbox