Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quelle  Converter.idl   Sprache: unbekannt

 
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
 * This file is part of the LibreOffice project.
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * This file incorporates work covered by the following license notice:
 *
 *   Licensed to the Apache Software Foundation (ASF) under one or more
 *   contributor license agreements. See the NOTICE file distributed
 *   with this work for additional information regarding copyright
 *   ownership. The ASF licenses this file to you under the Apache
 *   License, Version 2.0 (the "License"); you may not use this file
 *   except in compliance with the License. You may obtain a copy of
 *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 */



 module com {  module sun {  module star {  module script {


/** This service provides a widening converter converting from one type to another,
    if possible.

    <p>What is possible?
    <ul>
    <li>byte: byte, (short *1), (long *1), (hyper *1), (float *1), (double *1), (enum *2), (any *3), boolean, (char *4), (string *5)</li>
    <li>short: byte, short, (long *1), (hyper *1), (float *7), (double *7), (enum *2), (any *3), boolean, char, (string *5)</li>
    <li>long: byte, short, long, (hyper *1), (float *7), (double *7), enum, (any *3), boolean, char, (string *5)</li>
    <li>hyper: byte, short, long, hyper, (float *7), (double *7), enum, (any *3), boolean, char, (string *5)</li>
    <li>float: byte, short, long, hyper, float, (double *7), (enum *8), (any *3), boolean, char, (string *5)</li>
    <li>double: byte, short, long, hyper, float, double, enum, (any *3), boolean, char, (string *5)</li>
    <li>enum: (byte *9), (short *9), (long *9), (hyper *9), (float *9), (double *9), (enum *10), (any *3), (string *11)</li>
    <li>void: ok for all types</li>
    <li>any: ok for all types</li>
    <li>boolean: byte, short, long, hyper, float, double, (any *3), boolean, char, (string *12). 0 => false, != 0 => true</li>
    <li>char: byte, short, (long *1), (hyper *1), (float *7), (double *7), enum, (any *3), boolean, char, (string *13)</li>
    <li>string: byte, short, long, hyper, float, double, enum, (any *3), boolean, char, string</li>
    <li>struct: (any *3), (struct *14)</li>
    <li>interface: (any *3), (struct *14)</li>
    <li>exception: (any *3), (exception *14)</li>
    <li>union: (any *3), (union *14)</li>
    <li>sequence: (any *3), (sequence *15)</li>
    </ul>
    rules:
    <ul>
    <li>1: only converts if the value is in the range of the target type.</li>
    <li>2: only converts if the value, not the position, of the enum is in the range of the target type.</li>
    <li>3: get value until it is not an any. Then convert it with the other rules.</li>
    <li>4: only converts if the value of the character is between 0 - 255.</li>
    <li>5: only converts if the value represents a decimal, hexadecimal (0x...) or a floating point number.
    Examples: 10, 0x10, 10.045, 10,555, +10, +10.6e10, -10.6e-10, .16.</li>
    <li>7: only converts if the value is in the range of the target type.
    The value is rounded to an integer.</li>
    <li>8: only converts if the float can be converted back to the same enum value.</li>
    <li>9: only converts if the number is one of the enumeration type values. Normally you need
    reflection information of the enum type.</li>
    <li>10: only converts if it is the same enumeration type.</li>
    <li>11: only converts if the string contains the name of an enumeration type value. Normally you need
    core reflection information of the enum type.</li>
    <li>12: only converts if the value of the string is "1", "true" or "0", "false". The comparison
    is case insensitive.</li>
    <li>13: only converts if the length of the string is 1 or 0.</li>
    <li>14: only converts if the types are equal or the source type is derived from the destination
    type.</li>
    <li>15: only converts if each element of the source sequence can be converted to an element
    of the destination sequence.</li>
    </ul>
*/
published service Converter: XTypeConverter;


}; }; }; };

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

[ Dauer der Verarbeitung: 0.2 Sekunden  (vorverarbeitet)  ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge