Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod Serialize (ActionElement meth) as String 
 | 
{ 
 | 
  Description: 
 | 
  [* 
 | 
    Convert a method reference into a string. 
 | 
     
 | 
    This should only be used in unit tests. 
 | 
  *] 
 | 
  TextBody: 
 | 
  [* 
 | 
    json := JSON::Object() 
 | 
     
 | 
    if( not meth.istype( ModeledStaticMethodActionElement ) ) 
 | 
    { 
 | 
      error( 'ActionElement of type ' + typeofexpression( meth ).Name() + ' is not supported. Only static methods are supported' ); 
 | 
    } 
 | 
    json.Add( LibOpt_Reflection::JSON_Type(), meth.TargetType().Name() ); 
 | 
    json.Add( LibOpt_Reflection::JSON_MethodName(), meth.Name() ); 
 | 
     
 | 
    arguments := JSON::Array(); 
 | 
    traverse( meth, astype( ModeledStaticMethodActionElement ).ModeledStaticMethodDefinition.Arguments, argument ) 
 | 
    { 
 | 
      arguments.Add( argument.Type().Name() ); 
 | 
    } 
 | 
     
 | 
    json.Add( LibOpt_Reflection::JSON_Arguments(), arguments ); 
 | 
     
 | 
    return json.AsString(); 
 | 
  *] 
 | 
  InterfaceProperties { Accessibility: 'Module' } 
 | 
} 
 |