~~NOTOC~~ ====== Concept Interface Documentation ====== Generated from CoBro image file on August 20, 2009 -- 10:48:15 am ===== Index ===== * [[#allSubconcepts]] * [[#allSuperconcepts]] * [[#asConcept]] * [[#asSmalltalk]] * [[#bag]] * [[#bootstrapExtendConceptDefinitionWith:]] * [[#conceptName]] * [[#copySlots:to:]] * [[#copySlots:toAll:]] * [[#copySlotsDown]] * [[#copySlotsDown:]] * [[#copySlotsDownExcluding:]] * [[#copySlotsExcluding:to:]] * [[#copySlotsExcluding:toAll:]] * [[#copySlotsTo:]] * [[#copySlotsToAll:]] * [[#displayName]] * [[#edit]] * [[#hasSuperconcept:]] * [[#hasSuperconceptNamed:]] * [[#inspect]] * [[#is:]] * [[#isCategory]] * [[#isCodeConcept]] * [[#isConcept]] * [[#isNamed:]] * [[#isReferringTo:]] * [[#isReferringTo:using:]] * [[#isReferringToStringPattern:]] * [[#isRelationship]] * [[#isSmalltalkConcept]] * [[#isTerminal]] * [[#isUsing:]] * [[#navigate]] * [[#referrers]] * [[#referrersUsing:]] * [[#remove]] * [[#removeReferencesTo:]] * [[#removeSilently]] * [[#removeUsageOf:]] * [[#smalltalkTemplate]] * [[#subconcept]] * [[#superconcept]] * [[#trippyInspect]] * [[#users]] * [[#withAllSubconcepts]] * [[#withAllSuperconcepts]] ---- ==== allSubconcepts ==== Returns a collection including my entire chain of subconcepts. ---- ==== allSuperconcepts ==== Returns a collection including my entire chain of super concepts. ---- ==== asConcept ==== Returns a concept representation of the receiver. Since I am already a concept, simply return self. ---- ==== asSmalltalk ==== Returns the Smalltalk code entity which I represent in the concept namespace. If I have no code level counterpart then throw an exception. ---- ==== bag ==== Opens a concept bag on the receiver. ---- ==== bootstrapExtendConceptDefinitionWith: ==== For bootstrapping only - do not use this method for defining regular concepts ! This method neglects any constraints imposed by the ConceptSpace. It will silently extend the definition of an existing concept with a number of definition entries. ---- ==== conceptName ==== Returns the (fully qualified reference) name that uniquely identifies me. ---- ==== copySlots:to: ==== Copies all slots of the receiver concept to another concept that are listed in the provided array. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. E.g., Concepts.myConcept copySlots: #(#comment) to: Concepts.anotherConcept. If the provided slotarray is nil then all slots are copied. ---- ==== copySlots:toAll: ==== Copies all slots of the receiver concept to all the concepts in the provided concept collection. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. ) ---- ==== copySlotsDown ==== Copies all slots of the receiver concept to all its direct subconcepts. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, FIRST superconcept, displayName) ---- ==== copySlotsDown: ==== Copies all slots of the receiver concept to all its direct subconcepts that are listed in the provided array. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, superconcept, displayName) ---- ==== copySlotsDownExcluding: ==== Copies all slots of the receiver concept to all its direct subconcepts excluding the slots listed in the provided array. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, superconcept, displayName) ---- ==== copySlotsExcluding:to: ==== Copies all slots of the receiver concept to another concept excluding the slots listed in the provided array. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. E.g., Concepts.myConcept copySlotsExcluding: #(#comment) to: Concepts.anotherConcept. The basic slots are not considered for copying (conceptName, superconcept, displayName). If the provided slotarray is nil then all slots are copied. ---- ==== copySlotsExcluding:toAll: ==== Copies all slots of the receiver concept to all the concepts in the provided concept collection excluding the slots listed in the provided array. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, superconcept, displayName) ---- ==== copySlotsTo: ==== Copies all slots of the receiver concept to another concept. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, superconcept, displayName). E.g., Concepts.myConcept copySlotsTo: Concepts.anotherConcept. ---- ==== copySlotsToAll: ==== Copies all slots of the receiver concept to all the concepts in the provided concept collection. Note that existing slots are not overwritten and that multiplicity rules may prevent the addition of a slot. The basic slots are not considered for copying (conceptName, superconcept, displayName) ---- ==== displayName ==== Returns the name to be used for pretty printing me. ---- ==== edit ==== Opens a concept editor on the receiver. ---- ==== hasSuperconcept: ==== Verifies whether the receiver has a particular concept in its superconcept chain. ---- ==== hasSuperconceptNamed: ==== Verifies whether the receiver has a particular concept (by name) in its superconcept chain. ---- ==== inspect ==== Opens a concept inspector on the receiver. ---- ==== is: ==== Returns a boolean indicating whether I am the same as another concept. ---- ==== isCategory ==== Returns a boolean indicating whether the receiver is a Category concept (i.e. the receiver has Concepts.Category in its superconcept chain). ---- ==== isCodeConcept ==== Returns a boolean indicating whether the receiver is a code concept (i.e. the result of conceptifying a code level entity). For a more specific check that is restricted to Smalltalk code entities, use the message isSmalltalkConcept. ---- ==== isConcept ==== Returns a boolean indicating whether the receiver is a concept (i.e. an instance of Concept). ---- ==== isNamed: ==== Returns a boolean indicating whether I bear a particular concept name. ---- ==== isReferringTo: ==== Returns a boolean indicating whether the receiver refers to aConcept using an arbitrary relationship. ---- ==== isReferringTo:using: ==== Returns a boolean indicating whether the receiver refers to aConcept using a particular relationship. ---- ==== isReferringToStringPattern: ==== Returns a boolean indicating whether the receiver refers to a string pattern using an arbitrary relationship. Wildcards are '*' for arbitrary number of characters and '#' for exactly one character. This is useful for example if you want to figure out which concepts refer to a particular string in their comment slot. ---- ==== isRelationship ==== Returns a boolean indicating whether the receiver is a relationship (i.e. the receiver has Concepts.AbstractRelationship in its superconcept chain). ---- ==== isSmalltalkConcept ==== Returns a boolean indicating whether the receiver's conceptname can be resolved into a binding in the Smalltalk image. As a result this verifies whether the receiver is a concept stub for a Smalltalk code entity. For a more generic check that is not restricted to Smalltalk use the message isCodeConcept. ---- ==== isTerminal ==== Returns a boolean indicating whether the receiver is a terminal value (i.e. an Object instead of aConcept). ---- ==== isUsing: ==== Returns a boolean indicating whether the receiver is using a particular relationship in its definition. ---- ==== navigate ==== Opens a graphical concept navigator on the receiver. ---- ==== referrers ==== Returns the concepts that refer to me. ---- ==== referrersUsing: ==== Returns the concepts that refer to me using a particular relationship. ---- ==== remove ==== Deletes the receiver concept from the concept namespace. A test is performed to see if there are any dangling references to it in which case a dialog is shown to inform the developer. Use the removeSilently counterpart if you want to bypass this test and automatically remove all references. ---- ==== removeReferencesTo: ==== Removes all references to a particular concept from the receiver concept. In essence this method iterates over all the slots in the receiver concept and removes the slots that refer to a particular concept as destination. ---- ==== removeSilently ==== Deletes the receiver concept from the concept namespace. A test is performed to see if there are any dangling references to it which are automatically removed. Use the remove counterpart if you want to remove concepts interactively. ---- ==== removeUsageOf: ==== Removes all slots of the receiver concept that use a particular concept as the relationship. In essence this method iterates over all the slots in the receiver concept and removes the slots that have a particular concept as relationship. ---- ==== smalltalkTemplate ==== Generates a textual smalltalk definition for a concept using cHTTP/1.1 206 Partial Content Date: Wed, 17 Feb 2010 15:05:47 GMT Server: Apache/2.2.9 (Fedora) X-Powered-By: PHP/5.2.9 Expires: Thu, 18 Feb 2010 15:05:47 GMT Cache-Control: public, proxy-revalidate, no-transform, max-age=86400 Pragma: public Accept-Ranges: bytes Last-Modified: Wed, 14 Mar 2007 09:17:04 GMT ETag: "a200dd13a632f6e3bd4fb92cb439030d" Content-Range: bytes 943341-1365319/1365320 Content-Length: 421979 Content-Disposition: attachment; filename="cobro2_parcels.zip"; Keep-Alive: timeout=15, max=100 Connection: Keep-Ali