コード例 #1
0
        def helper(value):
            if type_ == 'float':
                return common.format_float(value) + 'f'
            elif type_ == 'bool':
                return str(bool(value)).lower()
            elif type_ == 'char':
                return "'{0}'".format(value.replace("'", "\\'"))
            elif type_ == 'string':
                return '"{0}"'.format(value.replace('"', '\\"'))
            elif ':bitmask:' in type_:
                value = common.make_c_like_bitmask(value)
                cast = java_common.get_java_type(
                    type_.split(':')[0],
                    1,
                    legacy=self.get_device().has_java_legacy_types())

                if cast in ['byte', 'short']:
                    return '({0})({1})'.format(cast, value)
                else:
                    return value
            elif type_.endswith(':constant'):
                return self.get_value_constant(value).get_java_source()
            else:
                cast = java_common.get_java_type(
                    type_, 1, legacy=self.get_device().has_java_legacy_types())

                if cast in ['byte', 'short']:
                    cast = '({0})'.format(cast)
                else:
                    cast = ''

                return cast + str(value)
コード例 #2
0
    def needs_octave_java2int(self):
        if global_is_octave:
            type_ = self.get_type().split(':')[0]

            if 'int' in type_ and get_java_type(type_, 1, legacy=self.get_device().has_java_legacy_types(), octave=True) != 'int':
                return True

        return False
コード例 #3
0
    def get_java_variable(self):
        template = '{type_} {name}'
        name = self.get_name().headless

        if name == self.get_device().get_initial_name():
            name += '_'

        return template.format(type_=java_common.get_java_type(
            self.get_type().split(':')[0],
            self.get_cardinality(),
            legacy=self.get_device().has_java_legacy_types()),
                               name=name)
コード例 #4
0
    def get_java_source(self):
        templateA = '{type_} {name}'
        templateB = '{type_}[] {name}'

        if self.get_cardinality() == 1:
            template = templateA
        else:
            template = templateB

        return template.format(type_=java_common.get_java_type(
            self.get_type().split(':')[0],
            1,
            legacy=self.get_device().has_java_legacy_types()),
                               name=self.get_name().headless)
コード例 #5
0
    def get_java_source(self):
        template = '{minimum},<BP>{maximum}'
        minimum = self.get_formatted_minimum()
        maximum = self.get_formatted_maximum()
        cast = java_common.get_java_type(
            self.get_type(),
            1,
            legacy=self.get_device().has_java_legacy_types())

        if cast in ['byte', 'short']:
            cast = '({0})'.format(cast)

            if minimum.isdigit():
                minimum = cast + minimum
            else:
                minimum = '{0}({1})'.format(cast, minimum)

            if maximum.isdigit():
                maximum = cast + maximum
            else:
                maximum = '{0}({1})'.format(cast, maximum)

        return template.format(minimum=minimum, maximum=maximum)