uymas

package module
v1.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 0 Imported by: 0

README

Uymas

Golang 常用包,快速实现命令行程序开发、struct合并、随机数等生成.

Go.Dev reference Goproxy.cn Go

代码仓库介绍

项目介绍

go 语言工具库 go-version: v1.11.1

  • source
    • bin 命令行解析工具

分支介绍

  • master 项目主分支
  • develop 开发分支
  • nestling 雏形分支,包含实验性的代码
# 分支合并顺序
nestling --> develop -->master
安装
# github
$ go get -u gitee.com/conero/uymas

bin

命令行行语法

$ [command] [<options>]

$ [command] [<options>]
# [<options>] 格式如下


# 1. 配置参数;全称以及简写
--set[=true]
# - 表示单字符; -x; -xy => -x -y ; -xzy => x=zy
-short[=true]


# 2. 二级命令(紧接着 [command])
$ [command] [<sub-command>] [<options>]
plugin sub command(PSC)

插件式子命令

通过扫描二进制所在目录"$/"及“$/plg"下可执行文件,若存在将其视为PSC。

支持命名格式:

  • $/$app-name name
  • $/$app_name name
  • $/name name
  • $/plg/$app-name name
  • $/plg/$app_name name
tinygo

Experimental/Try 尝试实验性支持 tinygo

  • 进行中(since 2022-12-22)

  • "reflect is not fully implemented")That Fprintln appears to be using reflection, which is not well supported under tinygo yet. (E2935)

使用
package main

import (
	"fmt"
	"gitee.com/conero/uymas/bin"
)
// 命令 test
type Test struct {
	bin.Command
}
// 项目初始化
func (a *Test) Init ()  {
    // 重写方法时必先系统父结构体方法[!!]
    a.Command.Init()
    
    // todo ....
}
// 运行,执行内二级命令分发
func (a *Test) Run ()  {
	fmt.Println("ffff.")
}

// 命令 yang
type Yang struct {
	bin.Command
}


func main() {
	//router := &bin.Router{}
	//bin.Register("test", &Test{})
	//bin.Register("yang", &Yang{})
	//bin.Adapter(router)
	bin.RegisterApps(map[string]interface{}{
		"test": &Test{},
		"yang": &Yang{},
	})
	bin.Run()
}

Documentation

Overview

Package uymas is summary util library from the work experience, provides base version, author information and so on.

Major functional like `bin` (CLI-APP), `str`(string util), other more. Some of originated from work experience to enhance code reuse. The final directory is a convenient tool to realize command-line program development and other code.

Index

Constants

View Source
const (
	Version        = "1.3.0"    //dev is not product but development tag.
	Release        = "20230928" // dev|20060102
	Since          = "20181030"
	Author         = "Joshua Conero"
	Email          = "conero@163.com"
	Name           = "uymas"
	PkgName        = "conero/uymas"
	TimeLayoutDate = "20060102" // date layout-20060102
)

Variables

This section is empty.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
_examples
bin
Package bin is sample command application lib, provides functional and classic style Apis.
Package bin is sample command application lib, provides functional and classic style Apis.
butil
Package butil bin util package will not run the init(), but bin will
Package butil bin util package will not run the init(), but bin will
parser/syntax
Package syntax is bin language syntax extend, like digital computing.
Package syntax is bin language syntax extend, like digital computing.
tag
Package tag reflect struct tag for bin
Package tag reflect struct tag for bin
cmd
Package culture [pinyin] the chinese pinyin
Package culture [pinyin] the chinese pinyin
digit
Package digit Provide digitization tools such as converting numbers to Chinese uppercase and commonly used strings.
Package digit Provide digitization tools such as converting numbers to Chinese uppercase and commonly used strings.
ganz
Package ganz Chinese Traditional Heavenly Stems and Earthly Branches(天干地支).
Package ganz Chinese Traditional Heavenly Stems and Earthly Branches(天干地支).
pinyin
Package pinyin the chinese pinyin.
Package pinyin the chinese pinyin.
pinyin/material
Package material the Material of pinyin dick, it's `embed`.
Package material the Material of pinyin dick, it's `embed`.
Package fs support facilitate for handler file and direction.
Package fs support facilitate for handler file and direction.
Package logger basic and simple logger for application, it base the go embed `log` package.
Package logger basic and simple logger for application, it base the go embed `log` package.
lgr
Package lgr An instance of library `logger`, used for direct output from the command line, etc
Package lgr An instance of library `logger`, used for direct output from the command line, etc
Package netutil net util
Package netutil net util
Package number handler like unit cover.
Package number handler like unit cover.
parser
xini
Package xini parse ini config files and utils.
Package xini parse ini config files and utils.
Package str string handler method.
Package str string handler method.
Package svn command parser.
Package svn command parser.
Package test unit.
Package test unit.
Package util implements other tool more, like type cover, type value check.
Package util implements other tool more, like type cover, type value check.
rock
Package rock As the cornerstone of implementing generic methods, implementing generic related operations with minimal dependencies.
Package rock As the cornerstone of implementing generic methods, implementing generic related operations with minimal dependencies.
Package xsql extends for the sql package.
Package xsql extends for the sql package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL