::xotcl::Class
::xotcl::Class
Class Hierarchy of ::xotcl::Class
- ::xotcl::Object
- Meta-class:
- ::xotcl::Class
![[i]](/resources/acs-subsite/ZoomIn16.gif)
- Methods for instances:
- __api_make_doc, __api_make_forward_doc, __nextC, __timediff, abstract, ad_doc, ad_forward, ad_proc, appendC, arrayC, asHTML, autonameC, checkC, classC, cleanupC, configureC, contains, copy, db_1rowC, debug, defaultmethod, destroyC, destroy_on_cleanup, evalC, existsC, extractConfigureArg, filterC, filterguardC, filtersearchC, forwardC, hasclass, incrC, infoC, init, instvarC, invarC, isclassC, ismetaclassC, ismixinC, isobjectC, istypeC, lappendC, log, method, mixinC, mixinguardC, move, msg, noinitC, parametercmdC, procC, procsearchC, qn, requireNamespaceC, self, serialize, setC, substC, traceC, unsetC, uplevelC, upvarC, volatileC, vwaitC
- Methods to be applied on the class (in addition to the methods provided by the meta-class):
- __exitHandler, getExitHandler, setExitHandler, unsetExitHandler
- ::xotcl::Class
- Meta-class:
- ::xotcl::Class
![[i]](/resources/acs-subsite/ZoomIn16.gif)
- Methods for instances:
- ad_instproc, allinstances, allocC, autonameC, createC, extend_slot, infoC, instdestroyC, instfilterC, instfilterguardC, instforwardC, instinvarC, instmixinC, instmixinguardC, instparametercmdC, instprocC, method, newC, parameter, parameterclassC, recreateC, slotsC, superclassC, unknownC, uses
- Methods to be applied on the class (in addition to the methods provided by the meta-class):
- __unknown
Class Relations
- superclass: ::xotcl::Object
![[i]](/resources/acs-subsite/ZoomIn16.gif)
- subclass: ::xo::ChatClass
, ::xo::db::Class
, ::xo::tdom::Class
, ::xotcl::Class::Parameter
, ::xotcl::MetaSlot
, ::xotcl::RecreationClass
, ::xotcl::ScopedNew
, ::xotcl::package
, ::xowiki::IncludeletClass![[i]](/resources/acs-subsite/ZoomIn16.gif)
::xotcl::Class create ::xotcl::Class \
-superclass ::xotcl::Object
Methods
proc __unknown
::xotcl::Class proc __unknown name {}instproc ad_instproc
::xotcl::Class instproc ad_instproc {{-private:switch false} {-deprecated:switch false} {-warn:switch false} {-debug:switch false} proc_name arguments doc body} {
uplevel [list [self] instproc $proc_name $arguments $body]
my __api_make_doc inst $proc_name
}instproc allinstances
::xotcl::Class instproc allinstances {} {
return [::xotcl::my info instances -closure]}instproc extend_slot
::xotcl::Class instproc extend_slot {name value} {
# create a mirroring slot and add the specified value to the default
foreach c [my info heritage] {
if {[info command ${c}::slot::$name] ne ""} {
set value [concat $value [${c}::slot::$name default]]
break
}
}
my slots [list Attribute validator -default $value]
}instproc method
::xotcl::Class instproc method {-per-object:switch name arguments body} {
if {${per-object}} {
my proc $name $arguments $body} else {
my instproc $name $arguments $body}}instproc parameter
::xotcl::Class instproc parameter arglist {
if {![::xotcl::my isobject [self]::slot]} {::xotcl::Object create [self]::slot}
foreach arg $arglist {
set l [llength $arg]
set name [lindex $arg 0]
if {$l == 1} {
::xotcl::Attribute create [::xotcl::self]::slot::$name} elseif {$l == 2} {
::xotcl::Attribute create [::xotcl::self]::slot::$name [list -default [lindex $arg 1]]} elseif {$l == 3 && [lindex $arg 1] eq "-default"} {
::xotcl::Attribute create [::xotcl::self]::slot::$name [list -default [lindex $arg 2]]} else {
set paramstring [string range $arg [expr {[string length $name]+1}] end]
if {[string match {[$\[]*} $paramstring]} {
::xotcl::Attribute create [::xotcl::self]::slot::$name [list -default $paramstring]
continue}
set po ::xotcl::Class::Parameter
puts stderr "deprecated parameter usage '$arg'; use '-slots {Attribute ...}' instead"
set cl [self]
$po set name $name
$po set cl [self]
::eval $po configure [lrange $arg 1 end]
if {[$po exists extra] || [$po exists setter] ||
[$po exists getter] || [$po exists access]} {
$po instvar extra setter getter access defaultParam
if {![info exists extra]} {set extra ""}
if {![info exists defaultParam]} {set defaultParam ""}
if {![info exists setter]} {set setter set}
if {![info exists getter]} {set getter set}
if {![info exists access]} {set access ::xotcl::my}
$cl instproc $name args "
if {\[llength \$args] == 0} {
return \[$access $getter $extra $name\]} else {
return \[eval $access $setter $extra $name \$args $defaultParam \]}"
foreach instvar {extra defaultParam setter getter access} {
$po unset -nocomplain $instvar}} else {
::xotcl::my instparametercmd $name}}}
[self]::slot set __parameter $arglist}instproc uses
::xotcl::Class instproc uses list {
foreach package $list {
::xotcl::package import -into [self] $package
puts stderr "*** using ${package}::* in [self]"}}
Instances
::Generic::Form
, ::ListWidget
, ::RR
, ::SpecializedTest
, ::TableWidget
, ::Test
, ::__unknown
, ::blocks::BlockPage
, ::blocks::BlockPlainWikiForm
, ::blocks::BlockWikiForm
, ::blocks::Policy
, ::blocks::policy1::Package
, ::blocks::policy1::Page
, ::learning_content::ContentForm
, ::learning_content::ContentFormPage
, ::learning_content::ContentPage
, ::learning_content::ContentTemplateForm
, ::learning_content::ContentWikiForm
, ::learning_content::Policy
, ::learning_content::policyb::File
, ::learning_content::policyb::Form
, ::learning_content::policyb::Object
, ::learning_content::policyb::Package
, ::learning_content::policyb::Page
, ::learning_content::policyb::PageInstance
, ::learning_content::policyb::PageTemplate
, ::xo::AsyncHttpRequest
, ::xo::AsyncHttpRequest::RequestManager
, ::xo::Attribute
, ::xo::Chat
, ::xo::ChatClass
, ::xo::Cluster
, ::xo::ConnectionContext
, ::xo::Context
, ::xo::Drawable
, ::xo::HttpCore
, ::xo::HttpRequest
, ::xo::HttpRequestTrace
, ::xo::InstanceManager
, ::xo::Localizer
, ::xo::Message
, ::xo::OrderedComposite
, ::xo::OrderedComposite::Child
, ::xo::OrderedComposite::ChildManager
, ::xo::OrderedComposite::IndexCompare
, ::xo::OrderedComposite::MethodCompare
, ::xo::PackageMgr
, ::xo::Page
, ::xo::Policy
, ::xo::ProtocolHandler
, ::xo::TRN-Mode
, ::xo::Table
, ::xo::Table::Action
, ::xo::Table::AnchorField
, ::xo::Table::BulkAction
, ::xo::Table::Field
, ::xo::Table::ImageAnchorField
, ::xo::Table::ImageField
, ::xo::Table::ImageField_AddIcon
, ::xo::Table::ImageField_DeleteIcon
, ::xo::Table::ImageField_EditIcon
, ::xo::Table::ImageField_ViewIcon
, ::xo::Table::Line
, ::xo::Table::TABLE
, ::xo::Table::TABLE2
, ::xo::Table::TABLE2::Action
, ::xo::Table::TABLE2::AnchorField
, ::xo::Table::TABLE2::BulkAction
, ::xo::Table::TABLE2::Field
, ::xo::Table::TABLE2::ImageAnchorField
, ::xo::Table::TABLE2::ImageField
, ::xo::Table::TABLE3
, ::xo::Table::TABLE3::Action
, ::xo::Table::TABLE3::AnchorField
, ::xo::Table::TABLE3::BulkAction
, ::xo::Table::TABLE3::Field
, ::xo::Table::TABLE3::ImageAnchorField
, ::xo::Table::TABLE3::ImageField
, ::xo::Table::TABLE::Action
, ::xo::Table::TABLE::AnchorField
, ::xo::Table::TABLE::BulkAction
, ::xo::Table::TABLE::Field
, ::xo::Table::TABLE::ImageAnchorField
, ::xo::Table::TABLE::ImageField
, ::xo::Timestamp
, ::xo::Tls
, ::xo::dav
, ::xo::db::Attribute
, ::xo::db::Class
, ::xo::db::CrAttribute
, ::xo::db::CrCache
, ::xo::db::CrCache::Class
, ::xo::db::CrCache::Item
, ::xo::db::CrClass
, ::xo::db::temp_table
, ::xo::ical::VCALENDAR
, ::xo::ical::VCALITEM
, ::xo::ical::VEVENT
, ::xo::ical::VTODO
, ::xo::parameter
, ::xo::tdom::Class
, ::xo::tdom::Object
, ::xotcl::Class
, ::xotcl::Class::Parameter
, ::xotcl::MetaSlot
, ::xotcl::NonposArgs
, ::xotcl::Object
, ::xotcl::Object::CopyHandler
, ::xotcl::RecreationClass
, ::xotcl::ScopedNew
, ::xotcl::Slot::Nocheck
, ::xotcl::Slot::Optimizer
, ::xotcl::THREAD
, ::xotcl::THREAD::Client
, ::xotcl::package
, ::xotcl::serializer::Serializer
, ::xowiki::ADP_Generator
, ::xowiki::BaseLink
, ::xowiki::CatTree
, ::xowiki::Category
, ::xowiki::Category::section_style
, ::xowiki::ExternalLink
, ::xowiki::FileForm
, ::xowiki::FormForm
, ::xowiki::Importer
, ::xowiki::Includelet
, ::xowiki::IncludeletClass
, ::xowiki::Link
, ::xowiki::Link::css
, ::xowiki::Link::file
, ::xowiki::Link::glossary
, ::xowiki::Link::image
, ::xowiki::Link::js
, ::xowiki::Link::language
, ::xowiki::Link::localimage
, ::xowiki::Link::swf
, ::xowiki::LinkCache
, ::xowiki::ObjectForm
, ::xowiki::PageInstanceEditForm
, ::xowiki::PageInstanceForm
, ::xowiki::PageTemplateForm
, ::xowiki::ParameterCache
, ::xowiki::PlainWikiForm
, ::xowiki::Podcast
, ::xowiki::PodcastForm
, ::xowiki::Policy
, ::xowiki::RSS
, ::xowiki::RSS-client
, ::xowiki::RSS-client::channel
, ::xowiki::RSS-client::item
, ::xowiki::Timeline
, ::xowiki::Weblog
, ::xowiki::Weblog::EntryRenderer
, ::xowiki::Weblog::WeblogRenderer
, ::xowiki::WikiForm
, ::xowiki::XMLSyndication
, ::xowiki::formfield::CompoundField
, ::xowiki::formfield::DD
, ::xowiki::formfield::FormField
, ::xowiki::formfield::HH24
, ::xowiki::formfield::MI
, ::xowiki::formfield::MM
, ::xowiki::formfield::YYYY
, ::xowiki::formfield::abstract_page
, ::xowiki::formfield::boolean
, ::xowiki::formfield::checkbox
, ::xowiki::formfield::date
, ::xowiki::formfield::detail_link
, ::xowiki::formfield::enumeration
, ::xowiki::formfield::event
, ::xowiki::formfield::file
, ::xowiki::formfield::form
, ::xowiki::formfield::form_constraints
, ::xowiki::formfield::form_page
, ::xowiki::formfield::hidden
, ::xowiki::formfield::image
, ::xowiki::formfield::image_url
, ::xowiki::formfield::inform
, ::xowiki::formfield::label
, ::xowiki::formfield::mon
, ::xowiki::formfield::month
, ::xowiki::formfield::numeric
, ::xowiki::formfield::omit
, ::xowiki::formfield::page
, ::xowiki::formfield::party_id
, ::xowiki::formfield::password
, ::xowiki::formfield::radio
, ::xowiki::formfield::richtext
, ::xowiki::formfield::richtext::wym
, ::xowiki::formfield::richtext::xinha
, ::xowiki::formfield::scale
, ::xowiki::formfield::select
, ::xowiki::formfield::submit_button
, ::xowiki::formfield::text
, ::xowiki::formfield::textarea
, ::xowiki::formfield::url
, ::xowiki::formfield::user_id
, ::xowiki::formfield::youtube_url
, ::xowiki::includelet::decoration=edit
, ::xowiki::includelet::decoration=plain
, ::xowiki::includelet::decoration=portlet
, ::xowiki::includelet::decoration=rightbox
, ::xowiki::includelet::form-menu-button
, ::xowiki::includelet::form-menu-button-answers
, ::xowiki::includelet::form-menu-button-form
, ::xowiki::includelet::form-menu-button-new
, ::xowiki::includelet::page_fragment_cache
, ::xowiki::policy1::File
, ::xowiki::policy1::Form
, ::xowiki::policy1::Object
, ::xowiki::policy1::Package
, ::xowiki::policy1::Page
, ::xowiki::policy2::File
, ::xowiki::policy2::Form
, ::xowiki::policy2::Object
, ::xowiki::policy2::Package
, ::xowiki::policy2::Page
, ::xowiki::policy3::File
, ::xowiki::policy3::Form
, ::xowiki::policy3::Object
, ::xowiki::policy3::Package
, ::xowiki::policy3::Page
, ::xowiki::policy5::File
, ::xowiki::policy5::Form
, ::xowiki::policy5::FormPage
, ::xowiki::policy5::Object
, ::xowiki::policy5::Package
, ::xowiki::policy5::Page
, ::xowiki::policy6::File
, ::xowiki::policy6::Form
, ::xowiki::policy6::Object
, ::xowiki::policy6::Package
, ::xowiki::policy6::Page![[i]](/resources/acs-subsite/ZoomIn16.gif)