-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #53 from moosetechnology/52-should-create-FamixF77…
…StatementFunction fix #52
- Loading branch information
Showing
10 changed files
with
287 additions
and
27 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
91 changes: 91 additions & 0 deletions
91
src/Famix-Fortran77-Entities/FamixF77StatementFunction.class.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,91 @@ | ||
" | ||
a statement function | ||
## Relations | ||
====================== | ||
### Parents | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `parentEntity` | `FamixF77StatementFunction` | `statementFunctions` | `FamixF77TWithStatements` | Entity in which body I am defined| | ||
### Children | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `comments` | `FamixTWithComments` | `commentedEntity` | `FamixTComment` | List of comments for the entity| | ||
| `localVariables` | `FamixTWithLocalVariables` | `parentBehaviouralEntity` | `FamixTLocalVariable` | Variables locally defined by this behaviour.| | ||
| `parameters` | `FamixTWithParameters` | `parentBehaviouralEntity` | `FamixTParameter` | List of formal parameters declared by this behaviour.| | ||
| `statementFunctions` | `FamixF77TWithStatements` | `parentEntity` | `FamixF77StatementFunction` | Statement functions defined in the body| | ||
| `types` | `FamixTWithTypes` | `typeContainer` | `FamixTType` | Types contained (declared) in this entity, if any. #types is declared in ContainerEntity because different kinds of container can embed types. Types are usually contained in a Famix.Namespace. But types can also be contained in a Famix.Class or Famix.Method (in Java with inner classes for example). Famix.Function can also contain some types such as structs.| | ||
### Outgoing dependencies | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `accesses` | `FamixTWithAccesses` | `accessor` | `FamixTAccess` | Accesses to variables made by this behaviour.| | ||
| `outgoingInvocations` | `FamixTWithInvocations` | `sender` | `FamixTInvocation` | Outgoing invocations sent by this behaviour.| | ||
| `outgoingReferences` | `FamixTWithReferences` | `referencer` | `FamixTReference` | References from this entity to other entities.| | ||
### Incoming dependencies | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `incomingInvocations` | `FamixTInvocable` | `candidates` | `FamixTInvocation` | Incoming invocations from other behaviours computed by the candidate operator.| | ||
### Other | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `declaredType` | `FamixTTypedEntity` | `typedEntities` | `FamixTType` | Type of the entity, if any| | ||
| `sourceAnchor` | `FamixTSourceEntity` | `element` | `FamixTSourceAnchor` | SourceAnchor entity linking to the original source code for this entity| | ||
## Properties | ||
====================== | ||
| Name | Type | Default value | Comment | | ||
|---| | ||
| `isStub` | `Boolean` | false | Flag true if the entity attributes are incomplete, either because the entity is missing or not imported.| | ||
| `signature` | `String` | nil | Signature of the message being sent| | ||
" | ||
Class { | ||
#name : #FamixF77StatementFunction, | ||
#superclass : #FamixF77NamedEntity, | ||
#traits : 'FamixF77TWithStatements + FamixTHasSignature + FamixTSourceEntity + FamixTTypedEntity + FamixTWithParameters + FamixTWithTypes', | ||
#classTraits : 'FamixF77TWithStatements classTrait + FamixTHasSignature classTrait + FamixTSourceEntity classTrait + FamixTTypedEntity classTrait + FamixTWithParameters classTrait + FamixTWithTypes classTrait', | ||
#instVars : [ | ||
'#parentEntity => FMOne type: #FamixF77TWithStatements opposite: #statementFunctions' | ||
], | ||
#category : #'Famix-Fortran77-Entities-Entities' | ||
} | ||
|
||
{ #category : #meta } | ||
FamixF77StatementFunction class >> annotation [ | ||
|
||
<FMClass: #StatementFunction super: #FamixF77NamedEntity> | ||
<package: #'Famix-Fortran77-Entities'> | ||
<generated> | ||
^ self | ||
] | ||
|
||
{ #category : #accessing } | ||
FamixF77StatementFunction >> parentEntity [ | ||
"Relation named: #parentEntity type: #FamixF77TWithStatements opposite: #statementFunctions" | ||
|
||
<generated> | ||
<FMComment: 'Entity in which body I am defined'> | ||
<container> | ||
^ parentEntity | ||
] | ||
|
||
{ #category : #accessing } | ||
FamixF77StatementFunction >> parentEntity: anObject [ | ||
|
||
<generated> | ||
parentEntity := anObject | ||
] | ||
|
||
{ #category : #navigation } | ||
FamixF77StatementFunction >> parentEntityGroup [ | ||
<generated> | ||
<navigation: 'ParentEntity'> | ||
^ MooseSpecializedGroup with: self parentEntity | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
87 changes: 87 additions & 0 deletions
87
src/Famix-Fortran77-Entities/FamixF77TWithStatements.trait.st
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
" | ||
A trait that factorize several interesting properties for entities with statements | ||
## Relations | ||
====================== | ||
### Children | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `comments` | `FamixTWithComments` | `commentedEntity` | `FamixTComment` | List of comments for the entity| | ||
| `localVariables` | `FamixTWithLocalVariables` | `parentBehaviouralEntity` | `FamixTLocalVariable` | Variables locally defined by this behaviour.| | ||
| `statementFunctions` | `FamixF77TWithStatements` | `parentEntity` | `FamixF77StatementFunction` | Statement functions defined in the body| | ||
### Outgoing dependencies | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `accesses` | `FamixTWithAccesses` | `accessor` | `FamixTAccess` | Accesses to variables made by this behaviour.| | ||
| `outgoingInvocations` | `FamixTWithInvocations` | `sender` | `FamixTInvocation` | Outgoing invocations sent by this behaviour.| | ||
| `outgoingReferences` | `FamixTWithReferences` | `referencer` | `FamixTReference` | References from this entity to other entities.| | ||
### Incoming dependencies | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `incomingInvocations` | `FamixTInvocable` | `candidates` | `FamixTInvocation` | Incoming invocations from other behaviours computed by the candidate operator.| | ||
### Other | ||
| Relation | Origin | Opposite | Type | Comment | | ||
|---| | ||
| `sourceAnchor` | `FamixTSourceEntity` | `element` | `FamixTSourceAnchor` | SourceAnchor entity linking to the original source code for this entity| | ||
## Properties | ||
====================== | ||
| Name | Type | Default value | Comment | | ||
|---| | ||
| `isStub` | `Boolean` | false | Flag true if the entity attributes are incomplete, either because the entity is missing or not imported.| | ||
" | ||
Trait { | ||
#name : #FamixF77TWithStatements, | ||
#instVars : [ | ||
'#statementFunctions => FMMany type: #FamixF77StatementFunction opposite: #parentEntity' | ||
], | ||
#traits : 'FamixTInvocable + FamixTWithAccesses + FamixTWithComments + FamixTWithInvocations + FamixTWithLocalVariables + FamixTWithStatements + TEntityMetaLevelDependency', | ||
#classTraits : 'FamixTInvocable classTrait + FamixTWithAccesses classTrait + FamixTWithComments classTrait + FamixTWithInvocations classTrait + FamixTWithLocalVariables classTrait + FamixTWithStatements classTrait + TEntityMetaLevelDependency classTrait', | ||
#category : #'Famix-Fortran77-Entities-Traits' | ||
} | ||
|
||
{ #category : #meta } | ||
FamixF77TWithStatements classSide >> annotation [ | ||
|
||
<FMClass: #TWithStatements super: #Object> | ||
<package: #'Famix-Fortran77-Entities'> | ||
<generated> | ||
^ self | ||
] | ||
|
||
{ #category : #adding } | ||
FamixF77TWithStatements >> addStatementFunction: anObject [ | ||
<generated> | ||
^ self statementFunctions add: anObject | ||
] | ||
|
||
{ #category : #accessing } | ||
FamixF77TWithStatements >> statementFunctions [ | ||
"Relation named: #statementFunctions type: #FamixF77StatementFunction opposite: #parentEntity" | ||
|
||
<generated> | ||
<FMComment: 'Statement functions defined in the body'> | ||
<derived> | ||
^ statementFunctions | ||
] | ||
|
||
{ #category : #accessing } | ||
FamixF77TWithStatements >> statementFunctions: anObject [ | ||
|
||
<generated> | ||
statementFunctions value: anObject | ||
] | ||
|
||
{ #category : #navigation } | ||
FamixF77TWithStatements >> statementFunctionsGroup [ | ||
<generated> | ||
<navigation: 'StatementFunctions'> | ||
^ MooseSpecializedGroup withAll: self statementFunctions asSet | ||
] |
Oops, something went wrong.