paleozogt
paleozogt

Reputation: 6563

Flex: given Class object, get the name of the class it represents

In Flex, say I have a Class object. How do I get a string for the class it represents?

e.g.:

var clazz:Class= String;
trace(clazz);  // this gives "[class String]" but what I want is "String"

Upvotes: 10

Views: 11054

Answers (4)

Simmoniz
Simmoniz

Reputation: 11

here is a simple as2 code I've done that allows you to get the base class and the current class as a string :

If current class is empty, this is a base class

public function ObjectContructor(){
  var _construct:String;
  var _instance:String;
  for(var s:String in _global){
    if(this.constructor == _global[s])_construct = s;
    if(this instanceof _global[s] && this.constructor != _global[s])_instance = s;
  }
  trace("base class : " +_construct);
  trace("Current class : " + _instance);
}

Upvotes: 1

back2dos
back2dos

Reputation: 15623

flash.utils::getQualifiedClassName is the function you are looking for ... ;)

greetz

back2dos

Upvotes: 14

George Profenza
George Profenza

Reputation: 51847

If you want to know all there is about a class, use describeType. Related, you might find useful getDefinition and getDefinitionByName.

describeType return all the details in an XML object. If you're looking just for the name, try something like:

trace(describeType(String).@name);

This is general actionscript. It has no dependency on the flex framework. Goodluck.

Upvotes: 4

Jason Miesionczek
Jason Miesionczek

Reputation: 14448

Does this work?

trace(clazz.toString());

Upvotes: -2

Related Questions