Name
SPVM::Format - Format Utilities
Usage
use Format;
# Foo 123 abc 1.115 Bar
my $result = Format->sprintf("Foo %d %s %.3f Bar", [(object)123, "abc", 1.115]);
# %d - "123"
my $result = Format->sprintf("%d", [(object)123]);
# %5d - "  123"
my $result = Format->sprintf("%5d", [(object)123]);
# %05d - "00123"
my $result = Format->sprintf("%05d", [(object)123]);
# %+d - "+123"
my $result = Format->sprintf("%+d", [(object)123]);
# %-5d - "123  "
my $result = Format->sprintf("%-5d", [(object)123]);
# %d - "x"
my $result = Format->sprintf("%c", [(object)'x']);
# %c - "あ"
my $result = Format->sprintf("%c", [(object)Fn->ord("あ")]);
# %s - "ABC"
my $result = Format->sprintf("%s", [(object)"ABC"]);
# %.2s - "AB"
my $result = Format->sprintf("%.2s", [(object)"ABC"]);
# %u - "4294967295"
my $result = Format->sprintf("%u", [(object)-1]);
# %f - "3.141500"
my $result = Format->sprintf("%f", [(object)3.1415]);
# %.2f - "3.14"
my $result = Format->sprintf("%.2f", [(object)3.1415]);
# %g - "3.14"
my $result = Format->sprintf("%g", [(object)3.14]);
# %x - "ff"
my $result = Format->sprintf("%x", [(object)255]);
  
# %x - "ffffffff"
my $result = Format->sprintf("%x", [(object)-1]);
# %p - "0x8000000000000000"
my $result = Format->sprintf("%p", [(object)$object]);Description
Format is a formatting utilities for sprintf method.
Class Methods
sprintf
static method sprintf : string ($format : string, $args : object[]);Creates a formatted string form the $format and the $args.
Specifiers
| Specifiers | Descriptions | Acceptable Types | 
|---|---|---|
| %c | An UTF-8character | Byte, Int | 
| %d | Signed 32-bit integer | Int | 
| %f | 64bit floating point | Double, Float | 
| %g | 64bit floating point | Double, Float | 
| %x | Unsiged 32-bit integer represented by hexadecima characters 0-9a-z | Int | 
| %X | Unsiged 32-bit integer represented by hexadecima characters 0-9A-Z | Int | 
| %lX | Unsiged 64-bit integer represented by hexadecima characters 0-9A-Z | Long | 
| %ld | Signed 64bit integer | Long | 
| %lu | Unsigned 64bit integer | Long | 
| %lx | Unsiged 64-bit integer represented by hexadecima characters 0-9a-z | Long | 
| %s | String | String Type | 
| %p | Address | Object Type | 
| %u | Unsigned 32-bit integer | Int | 
Specifier Options
Specifier options can be written between % and the character of specifier such as d, f.
| Specifier Options | Descriptions | 
|---|---|
| 0[DECIMAL_NUMBERS] | Zero padding | 
| + | Adding a plus sign | 
| - | Left justified | 
| .[DECIMAL_NUMBERS] | Precision(Maximam width in %s) | 
Copyright & License
Copyright (c) 2023 Yuki Kimoto
MIT License